WEB/Java Script
[Java Script] 배열 내장함수 / reduce : 배열안에 알파벳이 몇개씩 들어있는지 확인하기
자바칩 프라푸치노
2021. 4. 23. 19:21
const alphabets = ['a','a','a','b','b','c','d','d','e']
const counts = alphabets.reduce((acc, current)=> {
if(acc[current]){
// acc안에 current가 있냐
acc[current] += 1;
}
else {
acc[current] = 1;
}
return acc;
}, {})
console.log(counts);


기본값 비어있는 객체가 acc 이고 current 는 배열의 첫번째 값이다
if문을 통해 비어있는 객체인 acc에 'a'가 있는지 확인한다.
비어있으니까 없다. 그러면 else문을 통해 acc[a]를 1로 만든다
두번째 루프를 돌면 acc가 acc에 a에 1이 들어가있는 상태이고 current는 a이다
그러면 if문을 통해 acc에 a가 있는지 확인한다.
있으니까 acc의 a는 2가 된다...
이런식으로 돌아가서 이 배열안에 알파벳이 몇개씩 들어있는 지 확인한다.
728x90