1. 배열을 지우십시오
var ary = [1,2,3,4]; ary.splice (0, ary.length); // 배열 console.log (ary)를 지우십시오. // output [], 배열을 비우십시오.
2. 배열 요소를 삭제합니다
var ary = [1,2,3,4]; ary.splice (0,1); 또는 ary.splice ($. inarray (2, ary), 1); 여기서 $ .inarray (2, ary)는 배열에서 요소의 인덱스 위치를 찾는 데 사용됩니다.
셋째, JS에서 배열을 삭제하는 몇 가지 방법
var arr = [ 'a', 'b', 'c'];
'b'를 삭제하려면 두 가지 방법이 있습니다.
1. 삭제 방법 : 삭제 ARR [1]
이런 식으로 배열의 길이는 변하지 않습니다. 현재 ARR [1]은 정의되지 않지만 배열의 인덱스가 변경되지 않은 상태로 유지된다는 이점도 있습니다. 현재 사용하려면 배열 요소를 통과해야합니다.
for (index in arr) {document.write ( 'arr ['+index+'] ='+arr [index]);}이 트래버스 방법은 정의되지 않은 요소를 건너 뜁니다
*이 방법은 향후 지원 될 것입니다.
2. 배열 객체 스플 라이스 방법 : arr.splice (1,1);
이러한 방식으로 배열의 길이는 그에 따라 변경되지만 원래 배열 인덱스도 그에 따라 변경됩니다.
스플 라이스 매개 변수의 첫 번째 1은 삭제의 시작 인덱스 (0에서 계산)이며, 이는 배열의 두 번째 요소입니다.
두 번째 1은 삭제되는 요소의 수이며, 여기서는 하나의 요소 만 삭제됩니다. 즉, 'b';
현재 삭제 된 요소가
배열에 보존되지 않습니다
*이 방법은 IE5.5 이후에만 지원됩니다
배열 요소를 삭제하는 동안 스플 라이스 방법은 배열 요소를 추가 할 수 있습니다.
예를 들어, arr.splice (1,1, 'd', 'e'), d, e는 배열 arr에 추가됩니다
결과 배열은 'a', 'd', 'e', 'c'가됩니다.
또한 JavaScript는 배열의 길이 속성을 설정하여 배열을 제기합니다. 이는 배열의 길이를 단축하는 유일한 방법입니다.
삭제 연산자를 사용하여 배열에서 요소를 삭제하는 경우 해당 요소가 정의되지 않더라도 배열의 길이 속성은 요소를 삭제하는 두 가지 메소드를 변경하지 않으며 배열의 길이도 변경됩니다.
/ * * 메소드 : array.remove (dx) * 함수 : 배열 요소를 삭제합니다. * 매개 변수 : DX 요소 위시 삭제. * 반환 : 원래 배열에서 배열을 수정* /// 자주 사용하는 것은 Traversal.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} a = [ '1', '2', '3', '4', '5']; 경고 ( "요소 :"+a+"nlength :"+a.length); A.remove (0); // subscript 0 ALERT로 요소를 삭제합니다 ( "요소 :"+a+"nlength :"+a.length);예 2,
/ * * 메소드 : array.baoremove (dx) * 함수 : 배열 요소를 삭제합니다. * 매개 변수 : DX 요소 위시 삭제. * 반환 : 원래 배열에서 배열을 수정하십시오. */ // 스플 라이스를 사용하여 구현할 수도 있습니다. Array.prototype.baoremove = function (dx) {// www.vevb.comif (isnan (dx) || dx> this.length) {return false;} this.splice (dx, 1); } b = [ '1', '2', '3', '4', '5']; 경고 ( "요소 :"+b+"nlength :"+b.length); B.Baoremove (1); // 첨자로 요소를 삭제합니다 1 ALERT ( "요소 :"+b+"nlength :"+b.length);IE5 이하에서 JavaScript의 배열 객체는 배열 요소를 삭제하는 기성품 방법을 제공하지 않습니다. IE5.5+ 버전에서는 스플 라이스 메소드가 있지만 특정 항목 (또는 여러 항목)을 삭제하지는 않지만 특정 항목 (또는 여러 항목)의 값 만 지우므로 항목이 여전히 존재하고 배열의 길이가 변경되지 않았 음을 의미합니다.
실제로 배열에 삭제 메소드를 추가 할 수 있습니다 (배열 멤버에서 배열의 항목을 제거하는 것이 좋습니다). 아마도 루프를 사용하여 값을 배열에 재 할당하는 것을 생각할 것입니다. 이것은 확실히 괜찮지 만 매우 비효율적입니다.
다음은 두 가지 배열 객체 슬라이스와 콘텐츠의 두 가지 방법을 사용하여 배열 삭제를 사용자 정의하는 방법을 소개합니다.
Array.prototype.del = function (n) {// n은 0에서 시작하는 용어를 나타냅니다. // 프로토 타입은 객체 프로토 타입이며 여기에서 객체에 사용자 정의 메소드를 추가하는 방법에주의를 기울입니다. if (n <0) // n <0이면 아무것도 완료되지 않습니다. 이것을 반환하십시오; Elsereturn this.slice (0, n) .concat (this.slice (n+1, this.length));/* concat 메소드 : 2 개 이상의 배열로 구성된 새 배열을 반환합니다. 다음은 this.slice (0, n)/this.slice (n+1, this.length)로 구성된 새로운 배열입니다. 중간에는 N 번째 항목이 없습니다. 슬라이스 방법 : 각각 시작 및 종료 위치를 지정하는 두 개의 매개 변수가있는 배열 세그먼트를 반환합니다. */} // 직접 추가하는 방법 var test = new Array (0,1,2,3,4,5); test = test.del (3); // 0에서 4 번째 항목을 삭제합니다. 경고 (테스트);위의 코드는 유연하게 두 가지 배열 객체를 유연하게 사용하여 기본 요구 사항을 실현합니다.
JS에서 배열 요소 및 청소 배열 (읽기)을 삭제하는 위의 간단한 방법은 내가 공유하는 모든 컨텐츠입니다. 나는 당신이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.