发布于 2015-04-13 07:57:54 | 61 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Javascript教程,程序狗速度看过来!

JavaScript客户端脚本语言

Javascript 是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。


原题如下:

<script>
var a = 5;
function test(){
this.a = 10; 
a = 15
this.func = function(){
var a = 20 ;
alert(this.a);
}
}
var tt = new test();
tt.func();
setTimeout(tt.func, 1000);
</script>

这是之前看到的一道js题,其中有a出现了五次,那么到底输出什么呢,我想看了我上一个随笔你应该就明白了。

这个题主要考察两个知识点:

1、settimeout的作用域问题

2、js作用域问题。this问题。

答案是:10 (第一次) 15(第二次)原因是:settimeout延时函数中的this是中是window全局对象。

另外题目中多次的a出现是为了混淆视听。要区分this.a和a变量的区别。



相关阅读 :
一道js面试题
一道常被人轻视的前端JS面试题
5个前端工程师js面试题
一道JS前端闭包面试题解析
用9种办法解决 JS 闭包经典面试题之 for 循环取 i
一道关于JavaScript变量作用域的面试题
一道面试题引发的对javascript类型转换的思考
分享一道关于闭包、bind和this的面试题
5个经典的JavaScript面试题
你有必要知道的 25 个 JavaScript 面试题
7个去伪存真的JavaScript面试题
5个JavaScript经典面试题
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务