如果两个函数声明的变量名n相同,执行哪个函数?

问题描述 投票:0回答:1
let foo = function(){
    console.log(1);
}
setTimeout (foo,1000);

foo = function(){
    console.log(2);
}  

我得到的输出为 1。但我需要知道为什么,因为 let 可以重新初始化,所以它在这里是正确的,为什么我没有得到 o/p 为 2?

javascript function variables let
1个回答
0
投票

运行此行时未声明第二个变量

setTimeout (foo,1000); 
您可以通过注释来检查它
let foo = function(){ console.log(1); }

© www.soinside.com 2019 - 2024. All rights reserved.