2016-08-06 3 views

답변

1

필터는 배열을 반복하여 콜백 함수를 실행합니다. 콜백 함수는 반환 할 값에 대해 부울 값을 계산해야합니다.

var arr = [{code:'A', number: 1}, {code:'A', number: 2}, {code:'B', number: 3 }] 
arr.filter(function(x) { return x.code === 'A'}).length 
1

배열을 반복하고 개수 및 해당 숫자와 같은 정보를 개체 구조에 저장합니다.

var arr = [{code:'A', number: 1}, {code:'A', number: 2}, {code:'B', number: 3 }]; 
 

 
var obj = {}; 
 
debugger; 
 
for (var i =0, len = arr.length; i < len; i += 1) { 
 
    ele = arr[i]; 
 
    code = ele.code 
 
    if (!obj[code]) { 
 
    obj[code] = { 
 
     count: 0, 
 
     number: [] 
 
    }; 
 
    } 
 
    obj[code].count += 1; 
 
    obj[code].number.push(ele.number); 
 
} 
 

 
function getCount(code) { 
 
    return obj[code].count; 
 
} 
 

 
console.log(getCount('A')); // 2 
 
console.log(getCount('B')); // 1 
 
console.log(obj);

관련 문제