我是js的新手,我想了解这三种情况下x变量之间的区别,以及为什么这段代码中的第三种情况给我x = 10仍然感到困惑
var x = 10;
function test(){
var x = 15;
}
test();
console.log(x)// return 10
///////////////////////////
var x = 10;
function test(){
x = 15;
}
test();
console.log(x)// return 15
////////////////////////////
var x = 10;
function test(x){
x = 15;
}
test();
console.log(x)// return 10
答案 0 :(得分:1)
这是因为x是通过值(而不是引用)传递的。请参阅此以获得更详细的解释:http://jasonjl.me/blog/2014/10/15/javascript/
答案 1 :(得分:1)