JavaScript:如何调用JavaScript对象?

时间:2015-01-20 03:12:42

标签: javascript

如何使用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());

2 个答案:

答案 0 :(得分:4)

这就是你需要的:

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());
  1. 在这种情况下,您不需要在对象prototype内定义方法,只需将函数添加到对象中。
  2. 另请注意,dateTime是一个函数,因此必须使用()调用它才能获得它返回的内容。

答案 1 :(得分:1)

你犯了两个错误:

1

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

dateSrv是一个对象,它没有由Function(非函数)继承的原型, 写下这个:

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

2

 console.log(dateTime.getDate()); 

dateTime不是对象。这是一个功能 你可以修复它: 的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;
}();

()表示有趣的是立即执行,所以dateTime是返回值----一个带有两个原型的对象。

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