一、当函数声明和函数定义式(变量赋值)同名时
function ledi(){ alert(‘ledi1‘); }; ledi(); var ledi = function (){ alert(‘ledi2‘); }; ledi();
执行顺序:
var ledi; function ledi(){ alert(‘ledi1‘); }; //预编译结束 ============== ledi(); ledi = function (){ alert(‘ledi2‘); }; ledi();
函数声明覆盖变量声明,但不会覆盖其值,然后按顺序执行代码,输出ledi1,紧接着将ledi变量重新赋值即初始化,输出ledi2
时间: 2024-10-10 10:30:27