반응형
splice 함수는 (a,b,c) 또는 (a,b)의 매개변수를 가진다.
a번째 항목에 b개수만큼 제거라는 뜻을 가지고 있고 c는 변경하거나 추가 또는 삭제할 변수를 의미한다.
Array.prototype.remove = function (index) {this.splice(index,1);}
var array = [52, 273, 103, 32, 274, 129];
for(var i =0; i< array.length;i++){
if(array[i] > 100){
array.remove(i);
}
}
console.log(array);
[ 52, 103, 32, 129 ]
다음과 같은 방법으로는 잘제거가 되지않는다.. 이유는 배열의 요소가 제거되면서 인덱스가 앞으로 당겨지기 때문이다.
이러한 문제를 해결하기위해서는 배열을 뒷부분 부터 간섭해 나가면된다.
Array.prototype.remove = function (index) { this.splice(index, 1); }
var array = [52, 273, 103, 32, 274, 129];
for (var i = array.length - 1; i >= 0; i--) {
if (array[i] > 100) {
array.remove(i);
}
}
console.log(array);
[ 52, 32 ]
반응형
'언어 > javascript' 카테고리의 다른 글
javascript: forEach (0) | 2020.12.16 |
---|---|
javascript : Date 객체 (0) | 2020.12.16 |
javascript : array sort 방법 (0) | 2020.12.15 |
javascript : HTML 관련 메서드 (0) | 2020.12.15 |
javascript : String (0) | 2020.12.15 |