如何查找变量是否为Object数组?

时间:2015-08-27 11:13:16

标签: javascript jquery

我需要查找变量是否为Object数组,下面是示例数据:

var myColumnDefs = [
                        {key:"label", sortable:true, resizeable:true},
                        {key:"notes", sortable:true,resizeable:true}];

如果我这样做

  

jQuery.type(myColumnDefs)然后会说它是数组

但我怎样才能找到它的对象数组?

如果我迭代数组中的每个元素并使用 jQuery.isPlainObject()检查对象,那么它也不会工作,因为它只会检查像 jQuery这样的普通对象。 isPlainObject({})

1 个答案:

答案 0 :(得分:5)

javascript中的数组没有输入,所以你必须检查每个数组的每个元素都是一个对象。

例如:

var isObjectArray = true;
myColumnDefs.forEach(function(elem) {
  if (typeof elem === "object")
    isObjectArray = false;
});

这是一个可重复使用的功能:

function isObjectArray(arr) {
    for (var i = 0; i < arr.length; i++)
      if (typeof arr[i] !== "object")
         return false;
    return true;
}