我有这个数组:
var someArr = [1,2,3,4,5];
在某些时候我需要检查数组是否为null或数组的长度> 0
在Angularjs中实现它的优雅方法是什么?
答案 0 :(得分:3)
您可以检查变量(数组,对象是否)是否具有真值。这意味着:
if( value ) {
}
如果值不是,将评估为true:
1. null
2. undefined
3. NaN
4. empty string ("")
5. 0
6. false
这是针对以上六个条件。但是如果您将数组定义为:
var arr = [];
然后你需要检查arr.length
答案 1 :(得分:1)
这个问题与JavaScript有关,而不是AngularJS。
function nonEmpty(arr) {
return !!arr && arr.length > 0;
}
示例:
nonEmpty(['a']) // true
nonEmpty([]) // false
nonEmpty(null) // false
nonEmpty(undefined) // false
答案 2 :(得分:1)
我猜你的意思如下:
angular.isDefined()
通过在应用程序的根目录中自行定义
,这是可行的angular.isNotNullOrZero = function(array) {
return !!array && !!array.length;
}
因此,您可以在整个申请过程中使用它。
var someArr = [1,2,3,4,5];
console.log(angular.isNotNullOrZero(someArr);
等。
但正如其他人所说,这只是简单的JS。