考虑以下 JavaScript:
function getType(obj){
return(typeof(obj))
}
alert(typeof(obj)) //alerts "undefined" correctly
alert(getType(obj)) //throws an error: ReferenceError: obj is not defined
为什么会发生这种情况?有什么解决方法吗?我正在尝试编写一个函数来检查变量是否存在。
这个问题与 typeof 无关。问题是您无法将未定义的变量传递给函数。
function doNothing(obj){
}
doNothing(obj);
此代码也会导致错误:Uncaught ReferenceError: obj is not defined
因此,您在函数中编写什么代码并不重要,因为它不会被调用。该错误发生在函数调用之前。
typeof
是一个运算符,而不是一个函数。
这就是为什么它的行为方式与函数不同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)