자바스크립트 배열에서 요소를 삭제하는 방법: 먼저 자바스크립트 배열 배열 객체에 대한 함수를 정의하여 배열에서 지정된 요소의 위치를 찾은 다음 마지막으로 제거 기능을 통해 요소를 삭제합니다. 할 수 있다.
이 문서의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
js는 배열에서 요소를 삭제합니다
배열에 지정된 요소 삭제
먼저 js 배열 개체에 대한 함수를 정의하여 배열에서 지정된 요소의 위치를 찾을 수 있습니다. , index , 코드는 다음과 같습니다.
Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) return i; } return -1; };
그런 다음 이 요소의 인덱스를 사용하고 js 배열 자체 함수를 사용하여 이 요소를 삭제합니다.
코드는 다음과 같습니다.
Array.prototype.remove = function(val) { var index = this.indexOf(val); if (index > -1) { this.splice(index, 1); } };
이런 식으로 이러한 함수가 구성됩니다. 예를 들어 배열이 있습니다:
var emp = ['abs','dsf','sdf','fd']
'fd'를 삭제하려면 다음을 사용할 수 있습니다.
emp.remove('fd');
배열의 항목 삭제
splice(index,len,[item]) 참고: 이 방법은 원래 배열을 변경하십시오.
splice에는 3개의 매개변수가 있으며, 배열에서 하나 이상의 값을 대체/삭제/추가하는 데에도 사용할 수 있습니다.·
index: 배열 시작 인덱스 len: 대체/삭제 항목의 길이: 대체 값, 삭제 작업 If 항목이 비어 있습니다
예: arr = ['a','b','c','d']
Delete
//删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变) var arr = ['a','b','c','d']; arr.splice(1,1); console.log(arr); //['a','c','d']; //删除起始下标为1,长度为2的一个值(len设置2) var arr2 = ['a','b','c','d'] arr2.splice(1,2); console.log(arr2); //['a','d']
Replace
//code from http://caibaojian.com/js-splice-element.html //替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1 var arr = ['a','b','c','d']; arr.splice(1,1,'ttt'); console.log(arr); //['a','ttt','c','d'] var arr2 = ['a','b','c','d']; arr2.splice(1,2,'ttt'); console.log(arr2); //['a','ttt','d'] 替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1
Add------ len이 0으로 설정되었습니다.
var arr = ['a','b','c','d']; arr.splice(1,0,'ttt'); console.log(arr); //['a','ttt','b','c','d'] 表示在下标为1处添加一项'ttt'
2의 값이 추가되었습니다: delete
delete 배열의 요소를 삭제한 후 배열 아래에 표시된 값은 정의되지 않은 값으로 설정되고 배열의 길이는 변경되지 않습니다
var arr = ['a','b','c','d']; delete arr[1]; arr; //["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined
업데이트 2016-11 -17: stackoverflow가 높음 하위 답변에서 jquery의 아버지인 John Resig가 기사에서 작성한 코드를 보았습니다.
// Array Remove - By John Resig (MIT Licensed) Array.prototype.remove = function(from, to) { var rest = this.slice((to || from) + 1 || this.length); this.length = from < 0 ? this.length + from : from; return this.push.apply(this, rest); };
다음은 실제 사용 사례입니다.
// 移除数组中的第二项 array.remove(1); // 移除数组中的倒数第二项 array.remove(-2); // 移除数组中的第二项和第三项(从第二项开始,删除2个元素) array.remove(1,2); // 移除数组中的最后一项和倒数第二项(数组中的最后两项) array.remove(-2,-1);
이 예는 다음과 매우 유사합니다. 위의 첫 번째 항목이지만 확인 요소가 없습니다. 특정 항목은 배열에 있는 요소의 아래 첨자 위치를 기준으로 찾아 삭제됩니다.
추천 학습: "javascript 고급 튜토리얼"
위 내용은 자바스크립트 배열의 요소를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!