JavaScript에서 배열 요소를 제거하는 방법: 1. 길이 속성을 통해 배열 요소를 제거합니다. 2. 삭제 키워드를 통해 제거합니다. 4. 대기열 메서드를 통해 제거합니다. 제거 6. 반복 방법을 통해 제거 7. 프로토타입 방법을 통해 제거.
이 문서의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
JavaScript에서 배열 요소를 삭제하는 7가지 방법 요약
JavaScript에서는 Object 외에 Array 유형이 아마도 가장 일반적으로 사용되는 유형일 것입니다. 다른 언어의 배열과 큰 차이가 있습니다. JavaScript의 배열은 매우 유연합니다. 오늘은 JavaScript에서 Array를 삭제하는 방법을 요약해 보겠습니다. 일반적인 분류는 다음과 같은 범주로 나눌 수 있습니다.
1. 길이
2. 삭제
3. 스택 방법
4. 대기열 방법
5. 작업 방법
6. 반복 방법
7. 프로토타입 방법
이제 말씀드리겠습니다. 위 내용에 대해 예와 설명을 하나씩 들어보세요.
1.length
JavaScript中Array的length属性非常有特点一一它不是只读的。因此,通过设置这个属性可以从数组的末尾移除项或添加新项,请看下面例子:
var colors = ["red", "blue", "grey"]; //创建一个包含3个字符串的数组colors.length = 2; console.log(colors[2]); //undefined
2. delete 키워드
var arr = [1, 2, 3, 4];delete arr[0];console.log(arr); //[undefined, 2, 3, 4]
삭제 후에도 배열의 길이는 변하지 않지만 삭제된 요소는 정의되지 않음으로 설정되어 있는 것을 볼 수 있습니다.
3. 스택 메서드
var colors = ["red", "blue", "grey"]; var item = colors.pop(); console.log(item); //"grey"console.log(colors.length); //2
Pop 메서드가 호출되면 배열이 "회색"인 마지막 항목을 반환하고 배열에 두 개의 요소만 남는 것을 볼 수 있습니다.
4. 대기열 방식
대기열 데이터 구조의 액세스 규칙은 FIFO(선입선출)입니다. 대기열은 목록 끝에 항목을 추가하고 목록 앞쪽에서 항목을 제거합니다. 배열에서 항목을 제거할 수 있는 메서드입니다. 첫 번째 항목이 반환되고 배열의 길이가 1씩 감소합니다.
var colors = ["red", "blue", "grey"]; var item = colors.shift(); console.log(item); //"red"console.log(colors.length); //2
5. 작업 방법
splice()는 아마도 가장 강력한 배열 방법일 것입니다. 여기에서는 배열 요소를 삭제하는 방법만 소개합니다. 배열 요소를 삭제할 때 원하는 만큼 항목을 삭제할 수 있습니다. 삭제할 첫 번째 항목의 위치와 삭제할 항목 수 등 2개의 매개변수만 지정하면 됩니다. 예를 들어 splice(0, 2)는 삭제됩니다. 배열의 첫 번째 항목입니다.
var colors = ["red", "blue", "grey"];var item = colors.splice(0, 1);console.log(item); //"red"console.log(colors); //["blue", "grey"]
[추천 학습: 고급 자바스크립트 튜토리얼]
6. 반복 방법
소위 반복 방법은 루프를 사용하여 배열 요소를 반복하고 해당 항목과 일치하는 항목을 삭제하는 것입니다. 가장 일반적으로 사용되는 곳은 배열의 요소가 객체인 경우 ID 등 객체의 속성에 따라 배열 요소가 삭제되는 경우입니다. 아래에 두 가지 방법이 소개됩니다.
첫 번째 방법은 가장 일반적인 ForEach 루프를 사용하여 요소를 비교하고 찾은 후 삭제합니다.
var colors = ["red", "blue", "grey"]; colors.forEach(function(item, index, arr) { if(item == "red") { arr.splice(index, 1); } });
두 번째 방법은 루프에서 필터 방법을 사용합니다.
var colors = ["red", "blue", "grey"]; colors = colors.filter(function(item) { return item != "red"}); console.log(colors); //["blue", "grey"]
코드는 매우 간단하게, 요소가 "빨간색"이 아닌 항목의 수를 색상으로 반환하여(실제로 새 배열을 얻음) 삭제 효과를 얻습니다.
7. 프로토타입 메소드
삭제 목적을 달성하기 위해 Array의 프로토타입에 메소드를 추가합니다.
Array.prototype.remove = function(dx) { if(isNaN(dx) || dx > this.length){ return false; } for(var i = 0,n = 0;i < this.length; i++) { if(this[i] != this[dx]) { this[n++] = this[i]; } } this.length -= 1; };var colors = ["red", "blue", "grey"]; colors.remove(1); console.log(colors); //["red", "grey"]
Array의 프로토타입 객체에 삭제 메소드를 추가하면 이 환경의 모든 Array 객체가 이 메소드를 사용할 수 있습니다. 가능하더라도 프로덕션 애플리케이션에서는 기본 개체 프로토타입을 수정하지 않는 것이 좋습니다. 이유는 간단합니다. 구현에 메서드가 없기 때문에 네이티브 개체의 프로토타입에 이 메서드를 추가하면 이 메서드를 지원하는 다른 구현에서 코드가 실행될 때 이름 지정 충돌이 발생할 수 있습니다. 그렇게 하면 실수로 기본 메서드가 재정의될 수도 있습니다.
여기에서는 JavaScript Array에서 요소를 삭제하는 데 일반적으로 사용되는 방법을 요약했습니다. 누구나 추가할 수 있습니다.
위 내용은 자바스크립트에서 배열 요소를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!