我想知道是否存在Javascript变量.这是我到目前为止从不同的论坛拼凑而成的:
function valueOfVar(foo){
var has_foo = typeof foo != 'undefined';
if(has_foo){
alert('1 = true');
return true;
}
else {
alert('1 = false');
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,我希望传入一个字符串作为foo.示例:valueOfVar(box_split [0] +'_ 2')
现在,我认为这不起作用,因为当某些变量甚至不存在时它返回true.事实上,它似乎一直都是真实的.
当我使用它时,一个有效的JQuery实现也会很棒.
谢谢大家的帮助
你的意思是这样的吗?
function variableDefined (name) {
return typeof this[name] !== 'undefined';
}
console.log(variableDefined('fred'));
// Logs "false"
var fred = 10;
console.log(variableDefined('fred'));
// Logs "true"
Run Code Online (Sandbox Code Playgroud)
如果你想能够处理局部变量,你必须做一些非常奇怪的事情:
function variableDefined2 (value) {
return typeof value !== 'undefined';
}
function test() {
var name = 'alice'
console.log(variableDefined2(eval(name)));
var alice = 11;
console.log(variableDefined2(eval(name)));
}
test();
// Logs false, true
Run Code Online (Sandbox Code Playgroud)