JavaScript:如何调用JavaScript对象?

JavaScript:如何调用JavaScript对象?,javascript,Javascript,如何使用dateTime变量调用getDate函数 var dateTime = function(){ var dateSrv = {}; dateSrv.prototype.getDate = function(){ return new Date().toDateString(); }; dateSrv.prototype.getTime = function(){ return new Date().toTimeString

如何使用dateTime变量调用getDate函数

var dateTime = function(){
    var dateSrv = {};
    dateSrv.prototype.getDate = function(){
        return new Date().toDateString();
    };
    dateSrv.prototype.getTime = function(){
        return new Date().toTimeString();
    };

    return dateSrv;
};
console.log(dateTime.getDate());
这就是您需要的:

var dateTime = function(){
    var dateSrv = {};
    dateSrv.getDate = function(){
        return new Date().toDateString();
    };

    dateSrv.getTime = function(){
        return new Date().toTimeString();
    };

    return dateSrv;
};

console.log(dateTime().getDate());
  • 在这种情况下,您不需要在对象
    prototype
    中定义方法,只需将函数添加到对象中即可
  • 还要注意的是,
    dateTime
    是一个函数,因此必须使用
    ()
    调用它才能得到它返回的内容

  • 你犯了两个错误:

    1

     var dateSrv = {};
        dateSrv.prototype.getDate = function(){
            return new Date().toDateString();
        };
    
    dateSrv是一个对象,它没有由函数(非函数)继承的原型, 写下这句话:

    dateSrv.getDate = function (){...}
    
    2

     console.log(dateTime.getDate()); 
    
    dateTime不是一个对象。这是一个函数 您可以将其修复为: log(dateTime().getDate()); 但我想这是你想要的:

    var dateTime = function () {
        var dateSrv = {};
        dateSrv.getDate = function () {
            return new Date().toDateString();
        };
        dateSrv.getTime = function () {
            return new Date().toTimeString();
        };
    
        return dateSrv;
    }();
    
    ()表示乐趣将立即执行,因此dateTime是返回值——一个具有两个原型的对象


    英语不是我的母语,希望你能理解我说的话(∩_∩)o

    我尝试调用内部getDate函数时出错哈~~我花了15分钟用英语写了这个简单的答案,也许我应该先提高我的写作能力