【发布时间】:2019-06-14 14:45:50
【问题描述】:
我正在创建一个函数来检查给定值是否为空,如果它未定义、等于空字符串或长度为零,它将返回 true。这就是我所做的
isEmpty(value){
if(typeof(value)=='undefined'){
return true;
}
else if(value==''||value.length==0){
return true;
}
return false;
}
但是当我评估一些未定义的变量时,例如 isEmpty(foo) 它会抛出一个未捕获的引用错误,但我想返回 true,该怎么做?
function isEmpty(value) {
if (typeof(value) == 'undefined') {
return true;
} else if (value == '' || value.length == 0) {
return true;
}
return false;
}
console.log(isEmpty(value))
【问题讨论】:
-
应该定义你试图从外部传递的变量。 like
let x;如果变量本身不被定义,那么它会抛出错误。 -
您可能还想查看
value == null -
正如@kaushik所说,变量应该在传递之前定义。除非你应该使用类似:
try { isEmpty } catch (e) { }. -
试试这个
fiddle
标签: javascript