카테고리 없음
[자바스크립트] 배열에서 특정 요소의 개수 구하기
S_sunny
2023. 3. 7. 22:44
만날 때마다 까먹어서 찾아보는 특정요소 개수 구하기!!
arr = ['b', 'a', 'n', 'a', 'n', 'a', 'a', 'p', 'p', 'l', 'e']
에서
'a' 가 몇개 있는지 구하기
1. reduce()
arr.reduce((acc,cur) => acc + (cur==='a'), 0) // 4
각 요소를 순회하는 현재 cur이 'a'이면 true(1), 'a'가 아니면 false(0) 이므로,
같은 요소를 찾을 때마다 누적값인 acc에 1이 더해진다.
두번째 인자 초기값 0 필수!
2. filter()
arr.filter(ele => ele==='a') // ['a', 'a', 'a', 'a']
arr.filter(ele => ele==='a').length // 4
각 요소를 순회하면서 조건에 맞는 요소만 담은 배열을 반환해주는 함수인 filter()
필터링되어 반환된 배열의 길이를 구하면 원래 배열에 특정 요소가 몇개 있었는지 알 수 있다.
3. for문 (for of문)
let count = 0;
for(let i=0; i<arr.length; i++){
if(arr[i]==='a') count++
}
// 또는
for(let ele of arr){
if(ele==='a') count++
}
// count 는 4
변수를 하나 설정해준 뒤, for문으로 배열을 돌면서 찾는 값과 같으면 누적해서 구하기