>  기사  >  웹 프론트엔드  >  JavaScript_javascript 기술을 기반으로 배열의 지정된 요소 제거(삭제) 구현

JavaScript_javascript 기술을 기반으로 배열의 지정된 요소 제거(삭제) 구현

WBOY
WBOY원래의
2016-05-16 15:22:121141검색

Array 객체에는 배열의 특정 요소를 삭제할 수 있는 함수가 있습니다. 사용하기는 매우 쉽지만 보거나 만질 수 없기 때문에 항상 어색하게 느껴집니다. 함수의 특정 인덱스 값 요소를 사용하면 새로운 아이디어를 얻을 수 있기를 바랍니다.

코드 예시는 다음과 같습니다.

var array=[]; 
array[0]="脚本之家一"; 
array[1]="脚本之家二"; 
array[2]="脚本之家三"; 
array[3]="脚本之家四"; 
array[4]="脚本之家五"; 
function remove(array,index)
{ 
 if(index<=(array.length-1))
 { 
  for(var i=index;i<array.length;i++)
  { 
   array[i]=array[i+1]; 
  } 
 }
 else
 { 
  throw new Error('超出最大索引!'); 
 } 
 array.length=array.length-1; 
 return array; 
} 
document.write(remove(array,2)); 

위 코드에서는 제거() 함수가 선언되어 있습니다. 이 함수에는 두 개의 매개변수가 있습니다. 첫 번째 매개변수는 배열 객체이고, 두 번째 매개변수는 삭제할 배열 요소의 인덱스 값이므로 위 코드는 다음과 같습니다. 세 번째 요소를 삭제하고, 삭제된 요소의 배열을 출력할 수 있습니다. 구현 원리도 매우 간단합니다.

remove() 함수는 먼저 들어오는 인덱스 값이 대략 배열 array.length-1의 최대 인덱스 값인지 확인합니다. 이 값이 최대 인덱스 값 array.length-1보다 크면 오류가 발생합니다. 그렇지 않은 경우에는 for 루프를 사용하여 인덱스 값 i부터 시작하여 인덱스 값이 i인 배열 값을 i보다 한 항목 낮은 값으로 설정하는 식으로 진행됩니다. 질문이 있으면 메시지를 남길 수 있습니다.

ps:js는 배열의 지정된 요소를 삭제합니다

var a = new Array("a","b","cc","d3");
//删除a数组的cc元素
//jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值。如果数组中不存在该值,则返回 -1。
该函数属于全局jQuery对象。 jquery 1.2中添加的该静态方法
var index = $.inArray("cc",a);
if(index>=0){
//arrayObject.splice(index,howmany,item1,.....,itemX)
//参数  描述
//index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
//howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
//item1, ..., itemX 可选。向数组添加的新项目。
 a.splice(index,1);
 alert(a.toString());
}else{
 alert("error");
 return false;
}
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.