繁体   English   中英

检查对象是否为空数组

[英]Check if an Obj is Empty Array

是否有一些native / lodash / underscore / etc方法来检查obj是否为空数组? [] === []由于obj引用不同而返回false。 我为此写了一个快速检查器:

  function isArrayOfLength(obj, length) {
    var isArrayOfSpecifiedLength = false; 

    if(Array.isArray(obj)){ 
      if(obj.length === length){
        isArrayOfSpecifiedLength = true; 
      }
    }

    return isArrayOfSpecifiedLength; 
  } 

但如果有更好的选择,我不想弄乱生产代码。 如果您出于任何原因想要它,请使用 注意-我需要能够检查任何var类型-该方法可能会得到obj或int,所以我不能只检查长度而不验证它是一个数组。

它非常简单:

function isEmptyArray(obj) {
   return Array.isArray(obj) && obj.length === 0;
}

尝试这个

var ap = (Array.isArray(obj) && (obj.length === 0))? true : false;

如果ap评估为true,那么您将知道其为空数组

随着Ramda你可以使用R.isArrayLike([]); //=> true R.isArrayLike([]); //=> true以检查它是否为数组,以及R.isEmpty([]); //=> true R.isEmpty([]); //=> true以验证是否有数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM