js中的函数声明你真的会了吗???

论坛 期权论坛 期权     
李才哥   2019-7-14 05:47   2053   0



var f=1 if(!f){    var a=10 } function fn() {     var b=20     c=30 } fn() console.log(a) console.log(c) console.log(b)

答案:undefined 30 报错:b is not defined
解析:1、没有用var声明的是全局变量,即便在函数内部;
2、只有在function内部新声明的才是局部变量,在if,while,for等声明的变量其实是全局变量(除非本身在function内部)
3、因为变量提升,虽然if块的内容没执行,但是预解析阶段会执行var a,只是没有赋值而已,因此打印a是undefined而打印b会报错
在任何时代,
教育说起来都是一件高大上的事,
但却没有什么真正有价值的东西是教得会的,
没有任何一种文化模因
可以说清楚一个个体的全部问题。
在任何时代,
想要抓住人性的弱点来赚钱都非常容易,
没有一点高级。
相反,想要建设一种文化,
耐心地拆除信息壁垒,
并且能够坚持下来,
那真不是一般的不易。
在任何时代,
在一秒钟内看到本质的人,
和花半辈子看不清的人,
自然是不一样的命运。
现在扫描下方二位码
添加我的微信


     每一天,你将受到才哥的理论,结合历史、政治、文化、艺术、商业故事,令人防不胜防的高纯度无死角知识轰炸。以及,不间断的私藏书籍、电影推荐。


      有时候,某件事虽记不清楚,但总感觉这样的事在很久很久以前发生过...

     有时候,某个人虽从未见过,但总感觉面前的人在另一个时空里曾遇见...
    那时候相忘于江湖的事,或许穿越了时光,有了新的世界
     那时候不远万里追寻的梦,也许穿行过人海,也有了新的意义
     而对于我们来说,那个惦念的江湖,那个执着的梦,其核心都是在偌大的世界里,寻找到更真实更好的自己!
知道你会来
所以我一直在这里等



岁月不饶人,我亦未曾绕过岁月

最后,大家有什么想要吐槽的,就在留言区说出你的想法。





分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:30
帖子:6
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP