javascript - 在下面的这段代码中输出的怎么不是b呀?

查看:92
本文介绍了javascript - 在下面的这段代码中输出的怎么不是b呀?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

foo();//Uncaught TypeError: foo is not a function
var a=true;
if(a){
    function foo(){console.log("a");}
}else{
    function foo(){console.log("b");}
}

解决方案

看看这个吧:命名函数表达式探秘(http://justjavac.com/named-fu...

函数声明还有另外一个重要的特点,即通过条件语句控制函数声明的行为并未标准化,因此不同环境下可能会得到不同的结果。有鉴于此,奉劝大家千万不要在条件语句中使用函数声明,而要使用函数表达式。

这篇关于javascript - 在下面的这段代码中输出的怎么不是b呀?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆