[배열의 주요 메소드 정리]
var method = [ ] ; // 그냥 배열 변수선언
1.배열에 요소 추가 : 인덱스 지정 혹은 push()함수 혹은 unshift()함수
1-1 인덱스를 지정해서 추가
method[0] =100; => 0번방에 숫자 100 저장
1-2 push() 메서드 사용 : 배열의 맨 뒤에 추가
method.push(200) => 1번방에 숫자 200 저장
1-3 unshift()함수 : 배열의맨 앞에 추가, 기존 것들의 인덱스가 1씩 증가
method.unshift(300) => 0번방에 숫자 300 저장(1번방엔 100, 2번방엔 200 으로 밀려남)
출력해보면
for(var i=0 ; i<method.length ; i++)
console.log('method[%s]:%s',i,method[i]);
2.배열에 요소 가져오기:인덱스 지정 혹은 pop()함수 혹은 shift()함수
2-1 인덱스로 꺼내기 :그저 출력만 함, 원본에 영향 x
console.log(method[1]);
console.log('인덱스로 꺼내온 후 배열 크기:',method.length); => 크기 3 ,원본 변화X
2-2 pop() 함수로 꺼내기 : 맨 끝에꺼 1개를 꺼내 옴, 진짜 꺼내와서 버려서 원본에서 사라져 버림
console.log('꺼내온 요소:',method.pop());
console.log('pop으로 꺼내온 후 배열 크기:',method.length); // 크기 2, 원본변화O
for(i in method) console.log('method[%s]:%s',i,method[i]);
console.log('꺼내 온 요소:',method.pop()); //100
console.log('꺼내 온 요소:',method.pop()); //300
console.log('pop으로 다 꺼내온 후 배열 크기:',method.length);
console.log('꺼내온 요소:',method.pop()); // 더 꺼내올 게 없음
console.log(method.pop() === undefined);
자 다시
method = [300,100] ; 여기서부터 시작 합시다. 배열로 0번방에 300, 1번방에 100 저장되어 있음
2-3 shift() 함수 : 맨 앞에서 요소 1개를 가져오고 배열에서 제거 (선입선출)
console.log('꺼내온 요소',method.shift());
console.log('shift로 꺼내온 후 배열 크기:',method.length);
3.배열 요소의 일부를 추출하기: 위에서는 1개씩만 꺼내왔따면 이번엔 범위로 꺼내오기 !
slice(start [, end] ) 함수 이용 인덱스 0부터 시작
start 인덱스부터 끝까지 혹은 start 인덱스부터 end-1(끝 인덱스 포함x) 까지 추출, 원본 변화 X
method.push(200);
method.push(300);
method.push(400);
method.push(500);
console.log(method);//Array(5) [ 100, 200, 300, 400, 500 ] 현재상황
var method_ = method.slice(3);
console.log('slice 후 원본배열');
for(i in method) console.log(method[i]);
console.log('slice 한(시작인덱스) 새로운배열');
for(i in method_) console.log(method_[i]);
method_ = method.slice(2,4);
console.log('slice(시작인덱스,끝인덱스) 한 새로운배열');
for(i in method_) console.log(method_[i]);
console.log('slice(시작인덱스,끝인덱스(음수)) 한 새로운배열');
method_ = method.slice(2,-1);
for(i in method_) console.log(method_[i]);

음수 인덱스: | -5번 | -4번 | -3번 | -2번 | -1번 |
저장된 값: | 100 | 200 | 300 | 400 | 500 |
양수 인덱스: | 0번 | 1번 | 2번 | 3번 | 4번 |
'학원 > JS' 카테고리의 다른 글
10/31 32-8 [JS] IF문 (0) | 2022.10.31 |
---|---|
10/31 32-7 [JS] Array 메소드 이어서.... (1) | 2022.10.31 |
10/28 31-3 [JS] Array (for~ in문) (0) | 2022.10.28 |
10/27 30-6 [JS] Array (1) | 2022.10.27 |
10/27 30-6 [JS] Operator (0) | 2022.10.27 |