请你告诉我为什么这行不通。
如果我打电话给 sA 为什么不显示警报。
var s = {
A: function () { alert("test A"); },
B: function () { alert("test B"); }
};
s.A;
谢谢
请你告诉我为什么这行不通。
如果我打电话给 sA 为什么不显示警报。
var s = {
A: function () { alert("test A"); },
B: function () { alert("test B"); }
};
s.A;
谢谢
尝试
s.A();
A
是一个函数。如果你只是说s.A;
你所做的只是发出对什么的引用A
,例如,如果我s.A;
进入 Chrome 的 javaScript 控制台,我会得到以下信息:
注意它是如何输出函数定义的?
现在,如果我说 `sA();' 我得到了你最初的预期——它触发了这个函数:
看到它在 jsfiddle 上工作。您必须添加大括号才能s.A
使其成为函数调用。
s.A();
您正在返回对该函数的引用,但它没有被调用。为此,请在 之后添加大括号s.A
:
s.A();