Daily Notebook

[ES5] Array Method

by 배부른코딩로그
JavaScript 와 ECMAScript 는 무슨 차이일까?
JavaScript 는 언어이고, ECMAScript 는 규격/표준이다.

 

ES5로 넘어오면서 다음과 같은 Array Mehod를 사용할 수 있게 되었습니다.

Array.isArray()

var fruits = ["Banana", "Orange", "Apple", "Mango"];
console.log(Array.isArray(fruits)); // true

Array.forEach()

arr.forEach(callback(currentvalue[, index[, array]])[, thisArg])
배열을 순회하는 메서드.
function myFunction(value) {
  console.log(value); 
}

var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction); 
// 45
// 4
// 9
// 16
// 25

Array.map()

arr.map(callback(currentValue[, index[, array]])[, thisArg])
배열 내의 모든 요소 각각에 대하여 주어진 함수가 호출된 결과를 모아 새로운 배열을 반환.
function myFunction(value, index, array) {
  return console.log(value, index, array);
}
var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);
// 45 0 [45, 4, 9, 16, 25]
// 4 1 [45, 4, 9, 16, 25]
// 9 2 [45, 4, 9, 16, 25]
// 16 3 [45, 4, 9, 16, 25]
// 25 4 [45, 4, 9, 16, 25]
var arr  = [1, 2, 3];
var arr2 = arr.map((v, i, a) => {
    return v * 2;
});
console.log(arr, arr2) // [ 1, 2, 3 ] [ 2, 4, 6 ]

Array.filter()

arr.filter(callback(element[, index[, array]])[, thisArg])
주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열을 반환.
function myFunction(value, index, array) {
  return value > 18;
}
var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);
console.log(over18); // [45, 25]

Array.reduce()

arr.reduce(callback[, initialValue])
배열의 각 요소에 대해 주어진 함수(reducer)를  실행하고, 하나의 결과값 반환.
function myFunction(total, value, index, array) {
  return total + value;
}
var numbers = [45, 4, 9, 16, 25];
var sum = numbers.reduce(myFunction); 
console.log(sum); // 99

Array.reduceRight()

arr.reduceRight(callback[, initialValue])
주어진 함수를 오른쪽에서 왼쪽으로 실행하고, 하나의 결과값 반환.
function myFunction(total, value) {
  return total + value;
}
var numbers = [45, 4, 9, 16, 25];
var sum = numbers.reduceRight(myFunction);
console.log(sum); // 99

Array.every()

function myFunction(value, index, array) {
  return value > 18;
}
var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);
console.log(allOver18); // false

Array.some()

function myFunction(value, index, array) {
  return value > 18;
}
var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);
console.log(someOver18); // true

Array.indexOf()

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var index = fruits.indexOf("Apple");
console.log(index); // 0

Array.lastIndexOf()

var fruits = ["Apple", "Orange", "Apple", "Mango"];
var index = fruits.lastIndexOf("Apple");
console.log(index); // 2

 

 

[출처] https://www.w3schools.com/js/js_es5.asp

반응형

'자바스크립트 > ES5 (ECMAScript5)' 카테고리의 다른 글

그 외, ES5 Method/Syntax  (0) 2020.04.07
[ES5] JSON Method  (0) 2020.04.03
[ES5] 주요 문법 정리  (0) 2020.04.03

블로그의 정보

배부른코딩로그

배부른코딩로그

활동하기