자바스크립트는 배열을 다룰 때 유용한 다양한 빌트인 메서드를 제공
배열 메서드는 결과물을 반환하는 패턴 두가지
// push메서드는 원본 배열을 직접 변경한다
arr.push(2);
console.log(arr); // [ 1, 2 ]
//concat메서드는 원본 뱌열을 직접 변경하지 않고 새로운 배열을 생성하여 반환
const result = arr.concat(3);
console.log(arr); // [ 1, 2 ]
console.log(result); // [ 1, 2, 3 ]
Arrat.isArray메서드: 전달된 인수가 배열 o: true, 배열 x: false 반환
//true
Array.isArray([]);
Array.isArray([1, 2]);
Array.isArray([new Array()]);
// false
Array.isArray();
Array.isArray({});
Array.isArray(null);
Array.isArray(undefined);
Array.isArray(1);
Array.isArray("Array");
Array.isArray(true);
Array.isArray(false);
Array.isArray({ 0: 1, length: 1 });
const arr = [1, 2, 2, 3];
arr.indexOf(2); // 1
arr.indexOf(4); // -1
// arr.indexOf(검색 시작 인덱스, 검색 요소)
arr.indexOf(2, 2); // 2 (인덱스 2부터 끝까지 검색)
// 사용예시
const foods = ["apple", "banana", "orange"];
// 만약 foods에 orange가 없다면 추가해라
if (foods.indexOf("orange") === -1) {
food.push("orange");
}
console.log(foods); // [ 'apple', 'banana', 'orange' ]
const arr = [1, 2];
// 요소 추가 후 length 값 반환
let result = arr.push(3, 4);
console.log(result); // 4
// 원본 배열에 직접 추가
console.log(arr); // [ 1, 2, 3, 4 ]
// arr.push(3)과 동일한 처리 -> 속도가 더 빠름
const arr = [1, 2];
arr[arr.length] = 3;
console.log(arr); // [ 1, 2, 3 ]