이번에도 몇 가지만 예제로 살펴보겠습니다. Array 객체에서도 length 속성을 지원하기 때문에 배열의 요소 개수, 즉 길이를 구할 수 있습니다. 그래서 다음 코드처럼 배열의 길이를 이용한 반복문 처리가 가능합니다.
11/03/array/length_for.js
const arr = [10, 20, 30];
for(let i = 0; i < arr.length; i++){
console.log(arr[i]);
}
표 11-2에서 정리한 Array 객체의 메서드를 보면, 파괴적 메서드와 비파괴적 메서드로 구분했습니다. 파괴적 메서드는 메서드를 사용했을 때 원본 데이터를 변경하는 메서드를 의미하고, 비파괴적 메서드는 원본을 변경하지 않는 메서드를 의미합니다. Array 객체는 이러한 차이를 비교해서 학습하면 좋습니다.
배열에 데이터를 추가하거나 추출(제거하고 반환)하는 기능의 push(), pop(), unshift(), shift() 메서드는 파괴적 메서드입니다. 그래서 메서드를 사용하면 원본 데이터가 변경됩니다.
const arr = [10, 20, 30, 40];
arr.push(50); // 배열 맨 뒤에 50 추가
console.log(arr); // [10, 20, 30, 40, 50]
arr.pop(); // 배열 맨 뒤에서 요소 추출
console.log(arr); // [10, 20, 30, 40]
arr.unshift(0); // 배열 맨 앞에 0 추가
console.log(arr); // [0, 10, 20, 30, 40]
arr.shift(); // 배열 맨 앞에서 요소 추출
console.log(arr); // [10, 20, 30, 40]