js判断函数是否存在,js判断变量是否存在
js判断函数是否存在:
[php]
try
{
if(typeof(eval(funcName))=="function")
{
funcName();
}
}catch(e)
{
//alert("not function");
}
[/php]
js判断变量是否存在:
[php]
function check()
{
if (typeof(myvalue)=="undefined")
{
alert("value is undefined");
}
else
{
alert("value is true");
}
}
[/php]
如标题所问,常见有的js代码中有如下写法: if(arg){} 通过以上语句来判断变量是否存在,按理说if后应跟着一个boolean的表达式,但arg如果不存在则是undefined,存在则为变量本身存储的值,通过所示的语句如何能准确的判断一个变量是否已定义,该怎么理解呢? 望各位能指点迷津~~~ 问题补充:我知道使用undefined和null来判断一个变量是否定义或为空~~ 但直接把变量放到if的后面,而if需要一个boolean值, 那么使用if(arg)来判断一个变量是否定义,根据是什么呢?
javascript中null,undefined,0,"",false作为if的条件的时候,被认为是flase.
任何值为0、null、未定义或空字符串的表达式被解释为 false。
--摘自JavaScript语言参考