(obj.inner.print)() 和 (obj.inner.print = obj.inner.print)()怎么理解?
var num = 10;
var obj = {
num:8,
inner: {
num: 6,
print: function () {
console.log(this.num);
}
}
}
num = 888;
obj.inner.print(); // 6
var fn = obj.inner.print;
fn(); //888
(obj.inner.print)(); //6
(obj.inner.print = obj.inner.print)(); //888
其实就是
而
是一个赋值操作,返回一个函数,再调用这个函数