90 lines
1.4 KiB
Markdown
90 lines
1.4 KiB
Markdown
# 배열
|
|
|
|
## 배열의 생성
|
|
|
|
```javascript
|
|
let array1 = ["a", "b", "c"];
|
|
let array2 = new Array("a", "b", "c");
|
|
let array3 = Array("a", "b", "c");
|
|
let array4 = Array(3); // [,,] 길이가 3인 배열
|
|
let array4 = Array.of(3); // [3] ECSMScript 2015
|
|
```
|
|
|
|
## 인덱스
|
|
|
|
자바스크립트의 배열은 0부터 시작하는 인덱스를 사용합니다.
|
|
|
|
## 배열의 길이
|
|
|
|
```length```는 메서드가 아니라 속성입니다. 읽기뿐만 아니라 쓰기도 할 수 있으며 length에 0을 할당하면 크기가 0인 배열이 됩니다.
|
|
|
|
```javascript
|
|
let array = ["a", "b", "c"];
|
|
console.log(array.length);
|
|
```
|
|
|
|
## 반복
|
|
|
|
```javascript
|
|
let array = ["a", "b", "c"];
|
|
|
|
/* C 스타일의 for 루프 */
|
|
for (let i = 0; i < array.length; i++) {
|
|
console.log(array[i]);
|
|
}
|
|
|
|
/* for .. of */
|
|
for (const item of array) {
|
|
console.log(item);
|
|
}
|
|
|
|
/* for each */
|
|
array.forEach(function (item) {
|
|
console.log(item);
|
|
});
|
|
|
|
/* for each with arrow function */
|
|
array.forEach((item) => console.log(item));
|
|
|
|
/* map */
|
|
array.map((item, idx)=>{
|
|
console.log(item);
|
|
});
|
|
```
|
|
|
|
## 메서드
|
|
|
|
```javascript
|
|
concat()
|
|
join()
|
|
push()
|
|
pop()
|
|
shift()
|
|
unshift()
|
|
slice()
|
|
splice()
|
|
reverse()
|
|
sort()
|
|
indexOf()
|
|
lastIndexOf()
|
|
```
|
|
|
|
```javascript
|
|
forEach()
|
|
map()
|
|
filter()
|
|
every()
|
|
some()
|
|
reduce()
|
|
reduceRight()
|
|
```
|
|
|
|
## 배열의 해체
|
|
|
|
```javascript
|
|
let array = ["a", "b", "c"];
|
|
let [a, b] = array;
|
|
|
|
console.log(a);
|
|
console.log(b);
|
|
``` |