首页 > 解决方案 > Javascript 需要一个基本的语法解释

问题描述

var x = 5;

function test2(x) {
  x = 7;
}

test2(8);
alert(x);

为什么这会输出全局 var x=5,而不受函数内任何内容的影响。

标签: javascript

解决方案


因为您传递了一个名为 x 的参数,它与您的全局变量同名。试试这个:

var x = 5;

function test2(y) {
  x = y;
}

test2(8);
alert(x);


推荐阅读