Array Methods
1. Properties
1-1. Array.length
- 배열의 길이를 반환함
var clothing = ['shoes', 'shirts', 'socks', 'sweaters'];
console.log(clothing.length); // => 4
2. Methods
2-1. isArray
- 배열인지 아닌지 검사
- arguments: 검사할 객체
- return value: true or false (boolean value)
- 검사할 객체가 배열이면 true, 배열이 아니면 false를 반환
Array.isArray([]); // => true
Array.isArray(); // => false
Array.isArray('Array') // => false
2-2. forEach
- arr.forEach(callback)
- arguments: element의 길이만큼 반복하는 함수
- parameters
- currentElement: 현재 element
- index: 현재 index
- array: 배열
- return value: 없음
- element마다 함수를 반복해서 실행
var arr = ['shoes', 'shirts', 'socks', 'sweaters'];
arr.forEach(function(element) {
console.log(element);
})
/*
shoes
shirts
socks
sweaters
*/
- *WHAT IS CALLBACK?
- argument로 넘겨주는 함수(A)
- 함수(A)를 parameter로 받는 함수(B)가 callback 함수(A)를 즉시 실행할 지, 나중에 실행할 지 결정할 수 있다
function system(callback) {
callback(); // 실행 가능한 콜백 함수
}
function foo() {
console.log('');
}
system(foo);
2-3. map
- arr.map(callback)
- arguments: element의 길이만큼 반복하는 함수
- parameters
- currentElement: 현재 element
- index: 현재 index
- array: 배열
- return value: callback이 실행되면서 return하는 값들을 모아 새로운 배열(기존의 배열과 똑같은 길이의 다른 배열)
- callback 내에서 return 필요
var array1 = [1, 4, 9, 16];
// pass a function to map
const map1 = array1.map(x => x * 2);
console.log(map1);
// expected output: Array [2, 8, 18, 32]
2-4. filter
- arr.filter(callback)
- arguments: element의 길이만큼 반복하는 함수
- parameters
- currentElement: 현재 element
- index: 현재 index
- array: 배열
- return value: 조건을 통과한 element들을 담은 새로운 배열
- callback내에서 boolean형태의 return 필요
- 기존 배열에서 조건에 따라 특정 element를 걸러낼 때 유용
var arr = ["a", 0, null, 1, ''];
arr.filter(function(element) {
return Boolean(element);
}); // => ["a", 1]
2-5. push / pop
2-5-1. arr.push(newElement)
- arguments: 추가할 element(여러개 가능)
- return value: 최종 배열의 길이
- 배열 마지막에 요소를 추가
var animals = ['pigs', 'goats', 'sheep'];
console.log(animals.push('cows'));
/* expected output: 4 */
console.log(animals);
/* expected output: Array ["pigs", "goats", "sheep", "cows"] */
2-5-2. arr.pop()
- return value: 제거된 element를 반환
- 배열의 마지막 요소를 제거
var plants = ['broccoli', 'cauliflower', 'cabbage', 'kale', 'tomato'];
console.log(plants.pop());
/* expected output: "tomato" */
console.log(plants);
/* expected output: Array ["broccoli", "cauliflower", "cabbage", "kale"] */
2-6. slice
- arr.slice([begin[, end]])
- arguments: 처음/마지막 index
- return value: 새로운 배열 객체 반환
- index의 범위만큼 element를 추출
- 배열을 복사(shallow copy)할 때 유용
var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango'];
var citrus = fruits.slice(1, 3);
var copyOfFruits = fruits.slice();
// fruits contains ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
// citrus contains ['Orange','Lemon']
// copyOfFruits contains ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
mdn javascript link
https://developer.mozilla.org/ko/docs/Web/JavaScript