ES5에서 사용 가능한 Array 메소드를 정리해보자.
- arrow 함수 (ES6) 활용은 불가능
- function 키워드를 통한 Array 메소드 기능은 활용 가능하다!
var nameArr = ['park', 'ko', 'yang', 'kim'];
var numArr = [2, 3, 5, 7];
var findedName = nameArr.find(function(item) {
item === 'park';
});
console.log(findedName); // park
var sum = numArr.reduce(function(pre, val) {
return pre + val;
}, 0); // 초기값 미설정 시, 배열의 첫번째 요소가 초기값 자동 설정
console.log(sum); // 17
var filteredArr = numArr.filter(function(item, idx, arr) {
return item % 2 === 0;
});
console.log(filteredArr); // [2]
var newArr = nameArr.map(function(item, idx, arr) {
return '내 이름은 ' + item + ' 이다!';
});
console.log(newArr); // ['내 이름은 park 이다!', '내 이름은 ko 이다!', '내 이름은 yang 이다!', '내 이름은 kim 이다!']
numArr.forEach(function(item, idx, arr) {
numArr[idx] = item + 1;
});
console.log(numArr); // [3, 4, 6, 8]
var isParkInclude = nameArr.some(function(item, idx, arr) {
return item === 'park';
});
console.log(isParkInclude); // true
var isNumLowerThan10 = numArr.every(function(item, idx, arr) {
return item < 10;
});
console.log(isNumLowerThan10); // true
var originArr = [4, 1, 9, 3];
// 오름차순 정렬
const sortedArr = originArr.sort(function(nxt, item) {
return nxt - item;
});
console.log(sortedArr); // [1, 3, 4, 9]