배열 : 순서가 있는 값
배열에서 index를 벗어나면 undefined 값이 나온다.
배열.push(값) -> 요소를 추가할 수 있다.
배열.pop(값) -> 요소를 삭제할 수 있다.
undefined + 숫자 : NaN (Not a number)
특정 값이 배열인지 아닌지 판별
console.table(arr) : 시각화 용이
배열.push, 배열.pop : 뒷쪽에 있는 요소를 추가, 제거
배열.unshift, 배열.shift : 앞쪽에 있는 요소를 추가, 제거
- 배열.indexOf() : 요소가 있는 위치의 인덱스를 반환
없는 단어를 넣으면 -1 반환
: 원하는 단어가 있는지 없는지 검사할 수 있다.
-1이 나오는지 -1이 아닌 값이 나오는지 검사하여...- 배열.includes() : 요소가 있는지 없는지 검사할 수 있다.
indexOf 가 범용성이 좋고 더 중요!
includes의 치명적인 약점 : 인터넷 익스플로러에서 작동하지 않는다 (호환성 측면에서도 indexOf가 좋다!)
- bracket notation 과 dot notation
key 값이 동적으로 변할 땐 bracket notation 사용- in 연산자를 이용해 해당하는 키가 있는지 확인할 수 있다.
'content' in tweet;
- 자바스크립트에서 배열은 object 자료형으로 취급된다.
- splice 처럼 원본 배열을 변경하는 메서드를 mutator method 혹은 mutable method라고 부른다.
- push, unshift 메서드는 배열에 요소를 추가한 후, 배열의 length를 리턴한다.
shift, pop 메서드는 제거된 요소를 리턴- slice 메서드는 원본 배열을 변경하지 않고 새로운 배열을 복사 혹은 지정범위 만큼 잘라서 사용가능
배열과 객체의 가장 큰 차이점은 순서 정보의 유무
배열은 요소에 0부터 순차적으로 접근할 수 있지만 객체는 key를 이용하여 value 에 접근
for of 문은 string과 array, 유사 배열등에서 사용이 가능한 반복문