使用javascript
我有一个功能
function test(variable)
{
if(variable != 'undefined')
{
console.log('variable is not set');
console.log('variable', where);
}
}
我使用test();
然后我在控制台得到了 '哪里没有设置' 'where设置为undefined'
为什么?
<小时/>的更新 这个功能不是我实际使用的。
如果变量未定义,函数不应该执行任何操作。
示例是显示if语句不起作用。
但问题实际上是我使用if variable != 'undefined'
而不是variable != undefined
答案 0 :(得分:6)
您在同一个console.log
分支中同时进行了if
次呼叫。这样做:
function test(variable)
{
if(variable != 'undefined')
{
console.log('where is not set');
}
else
{
console.log('where is set as ', where);
}
}
除此之外:如果要测试变量是否未定义,请使用typeof
operator测试类型:typeof variable != 'undefined'
。目前,您只测试variable
是否不等于字符串值'undefined'
。
答案 1 :(得分:4)
您正在测试variable
是否具有"undefined"
的字符串内容。
你可能想要的是
if(typeof variable != 'undefined')
其余的功能对我来说也没有意义。 where
来自哪里?
答案 2 :(得分:-1)
我不太明白你的问题,但尝试使用不同的参数名称而不是“变量”。看看错误是否仍然存在。
另外调用这样的函数:test(paramterValueHere);
最佳
答案 3 :(得分:-1)
试试这个;
if(variable !== 'undefined')