发布网友 发布时间:2022-04-22 19:29
共3个回答
热心网友 时间:2022-04-22 14:43
var m = o.m;
m();
这里面的o.m只是一个变量对象,并没有实际执行m的function,所以想要执行就必须要加上后面的那句m();
而var m = o.m();由于加了(),所以相当于执行了m的function(),然后把返回值赋值给m,所以会执行。
热心网友 时间:2022-04-22 16:01
我的理解是:
1. var m = o.m , m是函数指针, 指向function(). 随后调用m()会执行function.
2. var m = o.m(), m等于函数的返回值, 是用function的返回值来初始化/赋值m, 所以function会执行.
这两种方式都不是单纯的声明,都含有初始化。
此外,实践的结果比语法重要。
热心网友 时间:2022-04-22 17:35
加()函数会立即执行
参考资料:sername