为了账号安全,请及时绑定邮箱和手机立即绑定

var a=function和function a有什么区别?

var a=function和function a有什么区别?

尚方宝剑之说 2019-02-13 15:11:29
var a=function和function a有什么区别
查看完整描述

1 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

12345678910111213//代码一:a(1);    //执行这个会报错var a = function(index){    alert(index);}a(2);    //执行这个不会报错 //代码二:a(1);    //执行这个不会报错function a(index){    alert(index);}a(2);    //执行这个不会报错

原因:JavaScript 函数和变量声明的“提前”(hoist)行为。

区别一:代码一,加载js 代码之后 a 被 “提前",但是 function 里面的具体内容不会被提前。就是在调用    的时候就会去初始化 function 里面的代码块。代码二:加载的时候就 “提前”了。

1234567891011121314151617//代码一: js 作用域污染function a() { //function statement  return '1';}alert(a()); // alerts '3'function a() {  return '3';} //代码二:var a= function() { // function expression  return '1';};alert(a()); // alerts '3'a= function() {  return '1';};



查看完整回答
反对 回复 2019-03-09
  • 1 回答
  • 0 关注
  • 547 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信