我想使用全局变量作为两个或多个函数的参数:
$(document).ready(function(){
function foo(x){
var z = '#'+ x ;
// use function bar(y,z) insde;
}
function bar(y,z){
//
}
});
实际上,bar函数无法看到z参数。有没有办法将“z”定义为全局变量?
由于
答案 0 :(得分:4)
一个解决方案:
$(document).ready(function(){
var z;
function foo(x) {
z = '#' + x;
}
function bar(y) {
// use z
}
});
如您所见,z变量是就绪处理程序的本地变量。 foo和bar函数可以访问它。
然而,这可能是也可能不是最佳解决方案。这取决于如何使用foo和bar函数(它们从哪里调用)。
答案 1 :(得分:2)
有两种方法可以做到这一点。将变量设为全局变量,或将其作为参数传递。
var z;
function foo(x) {
z = '#' + x;
}
function bar(y,z){
}
或
function foo(x) {
var z = '#' + x;
var result = bar(y,z);
}
....