下面js代码 结果是什么,怎么解释?

[复制链接]
查看11 | 回复3 | 2017-10-20 17:12:36 | 显示全部楼层 |阅读模式
这个题类似的我遇到过,刚运行了一下,是100,10,100,关键是js预编译,类似的题还有var tt = 'aa'; function test(){ alert(tt); --undefined alert(this.tt);--aavar tt = 'dd'; alert(tt); --ddalert(this.tt);--aa一个函数被定义的时候 它的“可访问属性链”会被生成,以上函数的可访问属性链 self->window。当它被执行的时候,首先创建函数自定义的变量(如 var a; 无论a在函数哪个地方定义,函数执行时会首先被创建,值为undifined)函数引用到一个变量的时候,会循着“可访...
回复

使用道具 举报

千问 | 2017-10-20 17:12:36 | 显示全部楼层
结果为100,10,100。第一个结果很好理解就全局a=100;第二个是也是全局变量的a,但是它定义时;第三个是js先从全局变量中找a,如果全局变量没有a就从局部变量中查找a,都没有的话就会显示undefined。...
回复

使用道具 举报

千问 | 2017-10-20 17:12:36 | 显示全部楼层
alert(100)alert(10)alert('undefined')...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行