배열 이용해 수 많은 데이터를 한 번에 처리할 수 있다.
매번 새로운 변수를 선언한다면 같은 일을 여러번 반복하게 된다.
한 번에 여러개의 데이터를 사용할 때, 배열과 객체를 사용해 단 한 번의 선언으로 해결할 수 있다.
- 배열: 순서가 있는 값
- 순서: 인덱스(index)
- 인덱스의 값: 요소(element)
let myNumber = [73, 98, 86, 61, 96];
대괄호를 이용해 배열을 만들고, 각각의 요소는 쉼표로 구분해준다.
myNumber[3]; // 61
myNumber라는 배열의 3번째 인덱스를 조회
myNumber[3] = 200;
myNumber라는 배열의 3번째 인덱스의 값을 변경
myNumber; // [73, 98, 86, 200, 96];
인덱스의 값이 변경되었다.
myNumber; // [[13, 30], [73, 8], [44, 17]]; myNumber[1]; // [73, 8] myNumber[1][0]; // 73
온점(dot)을 이용한 명령(method)
let myNumber = [73, 98, 86, 61]; myNumber.length; // 배열의 길이는 4 myNumber.push(96); // 배열의 마지막에 96값을 가진 인덱스 추가 myNumber; // [73, 98, 86, 61, 96] myNumber.pop(); // 배열의 마지막 인덱스 제거 myNumber; // [73, 98, 86, 61] myNumber.unshift(31); //배열의 앞에 31값을 가진 인덱스 추가 myNumber; // [31, 73, 98, 86, 61] myNumber.shift(); // 배열의 앞 인덱스 제거 myNumber; // [73, 98, 86, 61]
배열인지 아닌지 확인하는 법
let words = ['땅', '불', '바람']; typeof words; // 'object'
typeof는 배열을 object타입으로 구분하므로 배열인지 알 수 없다.
let words = ['땅', '불', '바람']; Array.isArray(words); // true
Array.isArray 를 사용하면 배열(array)인지 아닌지 boolean타입으로 나온다.
배열 요소 포함 여부 확인하는 법
let word = ['Radaggrast', 'the', 'Brown']; word.indexOf('Radaggrast') // 0 word.indexOf('Yellow') // -1 word.includes('Radaggrast') // true word.includes('yellow') // false
includes 메서드는 '인터넷익스플로러'브라우저에서 호환되지않는다.