为什么以下javascript代码以这种方式运行?
var plusOne = function(num){
return num+1;
};
var total=plusOne(1);
console.log(total);
var total2=plusOne(3);
console.log(total2);
如果我是对的
var total=plusOne(1);
console.log(total);
返回值
2
到变量total
和变量plusOne
,然后记录到控制台“ 2”,但是如果plusOne
的值现在是2
,为什么var total2=plusOne(3);
console.log(total2);
返回值4,因为它不是实际执行的实际代码
var total2=2(3);
console.log(total2);
最佳答案
没有。
JavaScript无法以这种方式工作。实际上,我无法想到以这种方式起作用的任何编程语言。 plusOne
只是该函数的指针。
当您执行第一行时,值2
存储在total
中,但plusOne
却什么也没有发生。
当您执行第二行时,Javascript不会在乎该函数是否称为eariler。