A = {
f1: function() {
return {
a: function(){ alert('sss'); }
}
}
}
A.f1().a();
为什么以这种方式使用它?
为什么方法a()
绑定到 A.f1()?
A = {
f1: function() {
return {
a: function(){ alert('sss'); }
}
}
}
A.f1().a();
为什么以这种方式使用它?
为什么方法a()
绑定到 A.f1()?
f1
的成员函数A
返回一个对象字面量,其成员a
设置为一个函数。它也可以写成:
A = {
f1: {
a: function() { alert('sss'); }
}
}
A.f1.a();
在这种情况下,返回对象可能是个人喜好。这两个示例在功能上没有区别。
当您执行以下操作时:
var x = A.f1();
你得到的 x 是 f1 函数返回的对象。这是:
{
a: function(){ alert('sss'); }
}
现在对象'x'上面有函数a()。您可以将该函数称为:
x.a();
这与以下内容非常相似:
A.f1().a();