Array 객체

Ji Hyeok Im·2023년 3월 5일
0

Javascript

목록 보기
12/17

Array 객체의 메서드

Array 메서드는 Array 객체에 정의된 배열과 관련된 작업을 할 때 사용된다.

push(), unshift()

push() 메서드는 배열의 끝에 요소(들)을 추가한다.
반대로 unshift() 메서드는 배열의 앞에 요소(들)을 추가한다.

실행결과:

arr: Java,자바,true,1,true,JavaScript,자바스크립트,거짓,2

pop(), shift()


실행결과:

lastValue: JavaScript
arr: 1,true

pop() 메서드는 arr 배열의 맨 끝의 값을 lastValue 변수에 저장하고,

arr 배열에서 해당 요소(값과 인덱스)를 없앤다. 그 결과 배열의 공간이 줄어든다.


실행결과:

firstValue: 1
arr: true,JavaScript

shift() 메서드는 반대로 arr 배열의 맨 처음 값을 firstValue 변수에 저장하고,

arr 배열에서 해당 요소(값과 인덱스)를 없앤다. 그 결과 배열의 공간이 줄어든다.

reverse()

실행결과:

arr: 1,true,JavaScript,자바스크립트
arr: 자바스크립트,JavaScript,true,1

reverse() 메서드는 배열 요소의 순서를 전부 반대로 교체한다.

sort()

sort() 메서드는 해당 배열의 배열 요소들을 알파벳 순서에 따라 정렬한다.

배열 요소가 숫자라도 문자열로 보고 정렬됨에 주의해야 한다.


실행결과:

strArr: 감자,나는,나라,다람쥐,로마
alphabetArr: Abc,Bcd,Zcd,abc,bcd
numArr: 1,15,200,22,450,50

한글의 경우 사전순서로 정렬된다.

알파벳의 경우 대문자가 소문자보다 앞에 오고

첫글자를 비교하고 같으면 같으면 두번째 글자로 넘어간다.

숫자도 숫자 크기를 따르는 것이 아니라 가장 앞에 있는 숫자부터 비교한다.

숫자 정렬

sort() 메서드를 사용할 경우, 위와 같은 직관적이지 못한 숫자 정렬방식 대신

오름차순, 또는 내림차순으로 정렬하는 방법 또한 있다.

배열변수.sort((a,b)=>a-b); // 오름차순 정렬
배열변수.sort((a,b)=>b-a); // 내림차순 정렬

arrNumber.sort((a,b)=>a-b); 는 sort()의 콜백함수가

값이 -1일 때 값 변경이 일어나는 점을 이용한다.

배열 안의 값 a, b를 비교하여(b가 앞에 있는 값)

b가 a보다 클때 a-b의 결과가 음수가 되므로 값 변경이 일어나 a를 앞으로 보낸다.

반대로 b-a의 결과는 앞에 있는 값 b보다 a가 클 때 음수가 되므로

값 변경이 일어나 a가 앞으로 오게 된다.

영문 사전 순 정렬

localecompare() 메서드를 사용한다.

비교대상 문자열.localeCompare(참조 문자열)

참조 문자열이 비교대상 문자열의 앞에 오면 -1을 반환한다.

이를 이용해 숫자 정렬과 같은 메커니즘으로 정렬할 수 있다.

join()

배열의 모든 요소를 콤마로 구분된 하나의 문자열로 합쳐서 반환한다.

forEach()

배열변수.forEach(콜백함수)

var arr = [1, true, "JavaScript"]

위와 같은 배열이 있을 때, for 문을 사용해 배열의 모든 값을 나열할 수 있다.


실행결과:

arr[0] : 1
arr[1] : true
arr[2] : JavaScript

위의 for 문을 다음과 같은 코드로 재작성 할 수 있다.

forEach() 메서드는 매개변수의 인수로 함수를 전달받는다.

profile
Programming study

0개의 댓글