티스토리 뷰

코드스테이츠(SEB_FE_42)

[JS] 배열

codeyun2 2022. 11. 3. 21:32

배열, 객체는 다량의 데이터를 다룰 수 있는 데이터 타입임

 

배열

: 순서(index)가 있는 값(element)

 

Method

: 기능을 가짐

Property(속성)

: 변수로 사용할 수 있음

 

arr.length

: '배열의 길이' 반환(Property)

Array.isArray()

: 인풋값이 배열인지 확인하여 'Boolean(T/F)'로 반환

arr.indexOf()

: 배열 내부에 인풋값이 있는지 확인하여 있으면 'index' 반환, 없으면 '-1' 반환

arr.includes()

: 배열 내부에 인풋값이 있는지 확인하여 'Boolean(T/F)'로 반환

 

Array.from()

: 인풋값이 문자열인 경우, 알파벳 하나하나가 element로 이루어진 '배열' 반환

인풋값이 유사배열객체(키가 인덱스)인 경우, 값(밸류)으로 이루어진 '배열' 반환

str.split()

: 인풋값을 기준으로 나눠진 '배열' 리턴. 인풋값이 없으면 [str] 반환(길이 1의 배열 [str])

arr.join()

: 배열 요소 사이에 인풋값을 넣은 '문자열'을 반환. 기본값 ','

arr.forEach(함수)

: 배열 요소 각각에 함수 실행.

 

mutable method(원본 변경)

arr.push()

: 인풋값을 배열 끝에 추가. '변경된 길이' 반환

arr.pop()

: 배열 끝값을 삭제. '삭제된 값' 반환

arr.shift()

: 배열 가장 앞값(index 0)을 삭제. '삭제된 값' 반환

arr.unshift()

: 배열의 맨 앞에 인풋값 추가. '배열의 길이' 반환

arr.splice(시작인덱스, 삭제개수, 배열추가요소1, 배열추가요소2,...)

: 인풋값이 하나면, 시작인덱스부터 배열끝까지 삭제

인풋값이 둘이면, 시작인덱스부터 삭제개수만큼 삭제

인풋값이 셋이상이면, 시작인덱스부터 삭제개수만큼 삭제, 그 위치에 배열추가요소 n개 추가

삭제했으면 삭제한 '배열' 반환, 추가했으면 빈 '배열' 반환

arr.reverse()

: 배열의 순서를 뒤집음. 바뀐 '배열' 반환

arr.fill(value, start, end)

: start index부터 end-1 index까지의 값을 value값으로 바꿈. 바뀐 '배열' 반환

start, end는 선택사항

 

immutable method(원본 유지)

arr.slice(start, end)

: 인풋값이 하나면, 인풋값부터 배열 끝까지의 복사된 '배열'을 리턴

인풋값이 둘이면, 처음값 index부터 두번째 값 index-1를 복사한 '배열'을 리턴

arr.length -3은 뒤에서부터 세번째 값. arr.length 생략하여 -3으로 표현할 수 있음

arr.concat()

: 배열에 인풋값을 추가한 '배열'을 리턴. 인풋값은 문자열, 배열 가능

 

참고 mutable immutable 

https://doesitmutate.xyz/

 

Does it mutate?

The lastIndexOf() method returns the last index at which a given element can be found in the array, or -1 if it is not present. The array is searched backwards, starting at fromIndex.Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] )

doesitmutate.xyz

 

 

+)

반복문

for (변수 설정 in arr/dict)

: 키를 순회

for (변수 설정 of arr)

: 값을 순회

...arr (전개연산자)

 

개발자도구 debugger; 사용

함수가 단계별로 실행되어 에러 위치를 확인할 수 있음

1. 함수 선언

2. debugger; 함수 호출;

3. F9 

 

 

arr === [ ]는 조건으로 사용할 수 없음

위 [ ]는 빈 배열이 아닌 비어있는 특정한 배열이 되며, 

배열을 그 자체를 가리키는게 아니라 저장되어 있는 주소를 가리킨다

 

 

 

 

22.11.03

코스 S1U9 진행중

댓글
공지사항