如何过滤或删除对象中的数据

时间:2015-01-27 00:48:38

标签: javascript arrays

我是javascript的新手。我很抱歉问一个非常简单的问题。如何筛选或删除不符合对象数组条件的对象。 如果我有对象数组。这是我的数据。

 Object = [A,B,C,D,E];

  A = { data: [[0,1], 
              [0,1],  
              [0,2],
              [0,4],
               . 
               .
               .
              [0,6]],
        name: "A",
        Type: "1992"},

 B:  { data: [[1,1],
             [1,3],
             [0,4],
             [4,5],
               .
               .
               .
             [10,16]]
       name: "B",
       Type: "1996"},


  C: { data: [1,3],
             [1,5],
             [0,3],
             [0,6],
              .
              .
              .
             [12,3]],
       name: "C",
       Type: "1985"},


  D : {data: [[1,3],
              [M,6],
              [3,4],
              [0,6],
                .
                .
                ]}

我希望我的出局是[B,C,E]

数组中的所有Object都有这样的数据。你能否给我一些关于如何删除或过滤数据中“全部”第一个值等于0或者不是数字的对象的建议。例如,我想从我的对象数组中删除“A”和“D”,因为A中“data”数组中的第一个值包含[0,1],[0,1],[0,2], [0,4]并且“D”中的第一个数据包含不是数字的“m”。如果你能解决这个问题,我将非常感激。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用名称恰当的Array.prototype.filter

yourData.filter(function (e) { return e.data[0][0] !== 0; });

这将返回一个 new 数组,其中只包含与条件匹配的元素。