배열은 [ ] 안에 다양한 요소(값)를 차례로 채워 넣은 것 입니다.
아래에 값은 myMumber이란 변수에 배열 대입하였고 , 을 통해서 각 요소를 구분합니다.
1. 배열 활용법
myMumber = [ 74, 95, 12, 77 ];
- myMumber[1] // 95값 출력
- myMumber[4] = 66 // 4번 자리에 66 대입 (77번 뒤 66번 값 대입)
- myNumber.length // 4길이 출력
- for (let i = 0; i < myNumber.length; i++){
sum = sum + myNumber[i];} // 모든 값을 더합니다. - myNumber.indexOf('12') // 2
- myNumber.indexOf('95') !== -1 // true
배열에 값의 위치를 출력, 없으면 -1 출력을 함으로 값의 존재 유무를 검사활용을 할 수 있다. - myNumber.includes('없는것') // false
배열에 존재하는 값이면 true, 없으면 false를 출력합니다.
브라우저 호환성을 생각한다면 indexOf가 모두 지원하고 includes는 인터넷 익스플로저는 지원하지 않습니다.
2차원 배열
myMumber = [ [77, 11], [55, 21] ]
- myMumber[0][1] // 11
console.table(myMumber) // 표로 전체출력 (시각화에 도움)
console.log(myNumber[n]) // n번째 인덱스를 출력
2. 배열 요소 추가, 제거
변수에 . 온점(dot)을 사용하여 속성에 접근 할 수 있다. ()은 관련된 명령어 method 이다.
그대로 출력한다면 더하거나 뺀 요소의 값이 출력된다.
- myNumber.push(추가하고자 하는 값)
마지막에 요소를 추가할 수 있습니다. - myNumber.unshift(추가하고자 하는 값)
배열의 전체 길이가 출력 되고 맨 앞에 넣고자 하는 값이 출력 된다. - myNumber.pop()
마지막 값을 삭제 할 수 있습니다. - myNumber.shift()
맨 앞의 값을 제거한다.
3. 그 외 배열 메소드
array.isArray() - 배열 판독기
배열 유무에 따라 true, false를 출력합니다. []만 넣어도 true 출력이 가능하다.
str.split('')
어떠한 문자열을 받게 되면 '' 안 내용의 기준에 따라 배열을 출력한다.
(예시는 띄어쓰기 기준)
let str = 'Radagast the Brown'
str.split(' '); // --> ['Radagast', 'the', 'Brown']
str.slice(a, b)
문자열에서만 사용 가능한 것이 아니라 배열에서도 사용이 가능합니다.
이때 새로운 배열로 나타내고, 원본 배열은 바뀌지 않는다.
전체 중에서 a부터 b앞에까지의 값을 출력합니다. 즉, a ~ b-1이라고 생각하면 쉽습니다. (a 이상 b 미만)
arr.splice()
배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경한다.
arr.splice(-1)은 arr의 마지막 요소를 제거하게 됩니다.
slice와 반대 개념으로 생각하면 됩니다.
slice는 그 부분을 도려내서 사용한다 이고, 원본을 훼손하지 않지만.
splice는 그 부분을 도려내서 버려낸다 이고, 원본을 변경 시킵니다.
arr.join('')
배열의 모든 요소를 연결하고, 연결하는 부분을 ()안의 값을 통하여 하나의 문자열로 만든다.
값 생략시 ,로 연결하게 됩니다.
ex) arr.join('-')
arr.concat()
인자로 주어진 배열이나 값들을 기존 배열에 합쳐서 새 배열을 반환합니다.
const alpha = ['a', 'b', 'c'];
alpha.concat(1, [2, 3]); // ['a', 'b', 'c', 1, 2, 3]
'JavaScript & TypeScript' 카테고리의 다른 글
[JS] 스코프, 클로저 (0) | 2021.05.29 |
---|---|
[JS] 객체 (1) | 2021.05.27 |
[JS] 반복문 (0) | 2021.05.13 |
[JS] 조건문, 문자열, Math (0) | 2021.05.12 |
[JS] 함수 선언, 할당 (0) | 2021.05.12 |