var variable = "before";
change();
alert(variable);
function change(){
variable = "after";
}
是否可以在不返回的情况下更改函数内的全局变量?我需要跟注函数change
输出"在"
答案 0 :(得分:7)
是的,这是可能的,但请记住不要在函数内部放置var
关键字。
var variable = "before";
change();
alert(variable);
function change() {
var variable = "after";
}
var variable = "before";
change();
alert(variable);
function change() {
variable = "after";
}
答案 1 :(得分:2)
您应该避免声明全局变量,因为它们将自己添加为window
的属性。但是,要回答您的问题,是的,您可以通过更改variable
或window.variable
来更改全局变量。
实施例: http://jsbin.com/xujenimiwe/3/edit?js,console,output
var variable = "before"; // will add property to window -- window.variable
console.log(variable);
change();
console.log(window.variable);
function change(){
variable = "after"; // can also use window.variable = "after"
}
如果您有任何疑问,请与我们联系!