참조 타입(reference type) 데이터 : 대량의 데이터를 다루기에 적합하게 제작된 데이터 타입 ,배열과 객체
배열 : 순서가 있는 값
순서 : 인덱스라고 부르며 , 0부터 번호를 매김
e.g.
let myNumber = [73,98,86,61,96];
myNumber[3] ; // 61
myNumber.length ; // 5
myNumber[3] = 200 ; // myNumber라는 배열의 3번째 인덱스 값 변경
myNumber.push(93) ; myNumber 배열 끝에 93이라는 값 추가
myNumber.pop(); // myNumber 배열의 마지막 값을 삭제
myNumber.shift(); // 배열의 맨앞에있는 엘리먼트 삭제
myNumber.unshift(73); // 배열의 맨앞에 엘리먼트를 추가
myNumber.slice(); // 특정 배열을 잘라냄 (immutable) or 범위를 지정해서 복사를 해서쓴다
Ex)myNumber.slice() // 전체복사 ,
myNumber.splice(); // 특정 배열을 추가하거나 삭제할때 사용 (mutable)
Ex)myNumber.splice(2,0,37) ; 2번 index 에 0개 제거하고 37을 추가
myNumber.splice(2,1,) ; 2번 index에서 1개 제거
typeof myNumber; // “object”
Array.isArray(myNumber); // true (배열이면 true , 아니면 false)
myNumber.indexOf(73); // 0
myNumber.indexOf(98); // 1
myNumber.indexOf(28); // -1 (없는게 나오면 -1이 나온다)
myNumber.indexOf(98) !== -1 ; // true( myNumber.includes(98)와 같다 )
myNumber.indexOf(28) !== -1 ; // false
myNumber = [73,98,86,200,96];
*빈배열
[] !== [] // 다른 이유는 주소값이 다르기 때문이다.
*2차원 배열
let myNumber =[
[13,30],
[73,8],
[44,17],
]
arr.flat(); 2차원 배열을 1차원 배열로 만듬
myNumber[0][0] ; // 13
myNumber[0][1] ; // 30
myNumber[1][0] ; // 73
myNumber[1][1] ; // 8
myNumber[2][1] ; // 44
myNumber[2][2] ; // 17