배열


참조 타입(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