是否有一个通用的 JavaScript 函数来检查变量是否具有值并确保它不是undefined或null?我有这段代码,但我不确定它是否涵盖所有情况:
undefined
null
function isEmpty(val){ return (val === undefined || val == null || val.length <= 0) ? true : false; }
您可以检查变量是否有truthy值。这意味着
truthy
if( value ) { }
将评估为trueif valueis not:
true
value
上面的列表代表falsy了 ECMA-/Javascript 中所有可能的值。在该部分的规范中找到它ToBoolean。
falsy
ToBoolean
此外,如果您不知道变量是否存在(这意味着,如果它已声明),您应该检查typeof操作员。例如
typeof
if( typeof foo !== 'undefined' ) { // foo could get resolved and it's defined }
如果您可以确定至少声明了一个变量truthy,您应该直接检查它是否具有如上所示的值。