2015-01-27 2 views
2

저는 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]

배열 내 객체의 모든이 같은 데이터가 될 넣어합니다. 데이터의 "모든"첫 번째 값이 0이거나 숫자가 아닌 개체를 삭제하거나 필터링 할 수있는 방법에 대한 제안을 내게 줄 수 있습니까? 예를 들어 A의 "data"배열의 첫 번째 값에 [0,1], [0,1], [0,2] 등이 포함되어 있기 때문에 객체 배열에서 "A"와 "D" [0,4]이고 "D"의 첫 번째 데이터에는 숫자가 아닌 "m"이 들어 있습니다. 이 문제로 나를 도울 수 있다면 매우 감사 할 것입니다.

감사합니다.

+0

나는 약간 혼란 스럽다. 'B'와'C'도 첫 번째 색인에 '0'이있는 데이터 요소를 가지고 있습니다. 첫 번째 인덱스의 * all *이 '0'일 경우에만 요소를 필터링해야합니까? –

+0

죄송합니다. 나는 그들의 첫 번째 인덱스를 모두 삭제해야합니다 0 @ AlexisKing – MolesMon

+0

출력 데이터를 원하는대로 제공 할 수 있습니까? –

답변

2

적절하게 명명 된 Array.prototype.filter을 사용할 수 있습니다.

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

이 조건과 일치 요소만을 포함하는 새로운 배열을 반환한다.

+0

고맙습니다. – MolesMon

+0

전 배열에서 A와 D를 완전히 삭제하고 싶습니다. 그렇게 할 수 있습니까? @ 알렉시스 킹 – MolesMon

관련 문제