【发布时间】:2011-06-21 20:34:10
【问题描述】:
这是工作代码:
var test = function ()
{
console.log(test.data);
};
test.data = 'hello';
test.set = function (data)
{
test.data = data;
};
test.set('Test');
test();
这会将Test 输出到我的javascript 控制台。
现在我想知道,是否有办法使用类似的方法来做到这一点?
var test = {
this: function ()
{
console.log(test.data);
},
data: 'hello',
set: function (data)
{
test.data = data;
}
};
【问题讨论】:
-
函数是对象,但对象不是函数。当然,您可以将函数存储为对象属性,但不能使普通对象“可调用”。或者你真正想要达到什么目的?您的第二种方法应该有什么优势?
-
我想通过只使用 test() 来调用函数 test.this()
-
@Felix 我相信你没有抓住重点 - 我认为他正在尝试封装所有信息,并且只是采用一种更整洁/更有条理的方法。
-
是的,这就是我想要做的。
-
我希望 JavaScript 也能做到这一点!!!!!
标签: javascript function object