
아는데 모르는 ^^.. 배열 메서드를 오랜만에 정리 해보쟈

const 블랙핑크 = ["제니","리사","지수"]
블랙핑크는 네명이지만 위의 배열에 한명이 빠졌다.
뉴질랜드에서 날아오는 로제를 뒤늦게 추가해주려면?
블랙핑크.push("로제") // 4
console.log(블랙핑크) // ["제니","리사","지수","로제"]
반환 값은 4가 나온다 (배열의 길이를 반환).. 블핑은 네명이니까ㅎㅎ
const 삼시세끼 = ["점심밥","저녁밥"]
삼시세끼를 먹어야하는데 까먹고 아침밥을 안 넣었다.
맨 앞에 아침밥을 넣어주려면?
삼시세끼.unshift("아침밥") // 3
console.log(삼시세끼) // ["아침밥","점심밥","저녁밥"]
마찬가지로 새로운 배열의 길이를 반환하며
새로 추가한 요소는 맨 앞에 추가 된다.
splice는 기능이 많은 메스드로 기존 배열 요소를 추가, 교체, 삭제가 가능하여 배열의 내용을 수정해준다.

const 서브웨이 = ["빵", "치즈", "소스"]
서브웨이에서 샌드위치를 샀는데 알바생이 까먹고 내 야채를 넣어주지 않았다..
서브웨이.splice(2,0,"야채","할라피뇨") // []
console.log(서브웨이) // ['빵', '치즈', '야채', '할라피뇨', '소스']
아.. 그런데 할라피뇨 빼달라는 말을 안했네..ㅎ 할라피뇨 빼주세여
const 안먹어요 = 서브웨이.splice(3,1) // ["할라피뇨"]
console.log(서브웨이) // ['빵', '치즈', '야채', '소스']
console.log(안먹어요) // ["할라피뇨"]
즉, .splice(위치,삭제갯수,[추가하고싶은요소]) 이당!
반환값은 삭제한 배열 요소를 반환한다.
위에서는 ["할라피뇨"]가 반환된다.
삭제한 값이 없으면 빈 배열이 반환 된다.
const 과일 = ["사과","귤","포도","딸기"]
const 아이스크림 = ["빵또아", "누가바", "구구콘"]
과일.concat(아이스크림) // ['사과', '귤', '포도', '딸기', '빵또아', '누가바', '구구콘']
console.log(과일) // ["사과","귤","포도","딸기"]
```js
과일 배열과 아이스크림을 배열을 더할수 있는 메서드이다!
이 메서드는 기존 배열을 수정하지는 않는다. 빵또아는 과일이 아니니까..
추가된 새로운 배열을 반환하게 됨!
```js
const 간식 = 과일.concat(아이스크림)
console.log(간식) // ['사과', '귤', '포도', '딸기', '빵또아', '누가바', '구구콘']
const 과일 = ["사과","귤","포도","딸기"]
const 아이스크림 = ["빵또아", "누가바", "구구콘"]
const 간식 = [...과일,...아이스크림]
전개구문을 쓰면 더 쉽게 배열 요소를 합칠 수 있다.
push,unshift, concat 대신 사용이 가능하다.
const SNS = ["insta", "facebook", "kakaotalk", "버디버디", "싸이월드"]
자주 쓰는(쓰던) SNS 배열에서 현재 운영되고 있지 않은 SNS들을 삭제하려고 한다. 요즘 사람들은 버디버디 모르겠지.. 🥲
SNS.slice(3) // ["버디버디", "싸이월드"]
SNS.slice(3,5) // ["버디버디", "싸이월드"]
SNS.slice(-2) // ["버디버디", "싸이월드"]
반환은 새로운 배열을 반환한다.
첫번째 인자는 시작점이다. 시작은 0부터 시작한다. -1 은 맨 뒤 요소이다
slice(-2) 는 맨뒤에 요소 두개를 반환한다.
두번째 인자는 본인 인덱스 숫자를 제외하고 추출한다.
예를 들어 slice(1,4) 는 1,2,3 을 추출하게 됨
마찬가지로 인덱스가 음수이면 뒤에서 부터 숫자를 센다.

출처 : https://hianna.tistory.com/398
두번째 인자가 생략된다면 ㄱ요소 끝까지 나오게 된다.
const arr = ["banana", "apple", "carrot"]
const arr1 = [3,1,2]
arr.sort()
arr1.sort()
// ["apple", "banna", "carrot"]
// [ 1, 2, 3]
sort.() 메서드는 유니코드 순서에 따라 오름차순하는 배열 메서드 이다.
이 메서드는 주의해야할점이 유.니.코.드.순 이라는 거다
숫자를 정렬해야할때 문제가 생긴다.
const arr2 = [10,1,2,9,11]
arr2.sort()
// (5) [1, 10, 11, 2, 9]
유니코드 순서로 정렬을 하기 때문에 위처럼 원하는대로 정렬이 되지 않는다 ㅠ
const arr2 = [10,1,2,9,11]
arr2.sort((a,b) => a-b)
// (5) [1, 2, 9, 10, 11]
arr2.sort((a,b) => b-a)
// (5) [11, 10, 9, 2, 1]