检查Obj是否为空数组

时间:2016-11-02 14:13:48

标签: javascript

是否有一些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; 
  } 

但如果有更好的东西我不想混淆生产代码。 Plunk if you want it for whatever reason。注意 - 我需要能够检查任何var类型 - 该方法可能得到一个obj或一个int,所以我不能只检查长度而不验证它是一个数组。

3 个答案:

答案 0 :(得分:1)

这非常简单:

var $example = $("#s1").select2({
    data: [
        {
            "id": "companies_id",
            "text": "companies_id",
            "data-type": "int",
            "data-extra": '1'
        },
        {
            "id": "parent_companies_id",
            "text": "parent_companies_id",
            "data-type": "int",
            "data-extra": '2'
        },
        {
            "id": "client_of_companies_id",
            "text": "client_of_companies_id",
            "data-type": "int",
            "data-extra": '3'
        },
        {
            "id": "asset_locations_id",
            "text": "asset_locations_id",
            "data-type": "int",
            "data-extra": '4'
        },
        {
            "id": "companies_name",
            "text": "companies_name",
            "data-type": "varchar",
            "data-extra": '5'
        },
        {
            "id": "companies_number",
            "text": "companies_number",
            "data-type": "varchar",
            "data-extra": '6'
        }
    ],
}).on('select2:select', function(e) {
    console.log(e.params.data['data-type'], e.params.data['data-extra']);
});

答案 1 :(得分:-1)

试试这个

management.add-application-context-header

如果ap的计算结果为true,那么你就会知道它是一个空数组

答案 2 :(得分:-2)

使用Ramda,您可以使用<div class="item"><a href="img/works/S-2.jpg" title="SNAPDEAL PROJECT" data-lightbox-gallery="gallery1" data-lightbox-hidpi="img/works/S-2@2x.jpg"><img src="img/works/S-2.jpg" class="img-responsive img-thumbnail" alt="img"></a></div> 来检查它是否为数组,并使用R.isArrayLike([]); //=> true来验证是否有数据。