看看以下三个题目的alert值是多少,值得学习!
题目一:
<script type='text/javascript'>
var a = 10;
function test() {
a = 100;
alert(a);
alert(this.a);
var a;
alert(a);
}
test();
</script>
题目二:
<script type='text/javascript'>
var a = 100;
function test(){
alert(a);
var a = 10;
alert(this.a);
alert(a);
}
test();
</script>
答案为:undefined,100,10
题目三:
<script type='text/javascript'>
var a = 100;
function test(){
alert(a);
a = 10;
alert(this.a);
alert(a);
}
test();
alert(a);
</script>
答案为:100 ,10,10(去掉了var 就变成定义了全局变量了)
JavaScript作用域与this指向
本文通过三个具体的JavaScript代码示例解析了作用域链、变量声明提升及this关键字的指向问题,展示了不同情境下变量a的值变化,帮助读者深入理解JavaScript中变量的作用域与this的绑定规则。
848

被折叠的 条评论
为什么被折叠?



