1. 程式人生 > >js 根據元素刪除陣列指定的元素

js 根據元素刪除陣列指定的元素

二話不說直接上程式碼:

    var fileId = fileIds.split(",");
	
	if(contains(fileId,id)){
		var s = fileId.splice($.inArray(id,fileId),1);
		console.log(s);
	}

    function contains(a, obj) {
	     var i = a.length;
	     while (i--) {
		      if (a[i] == obj) {
		       return true;
		      }
	     }
	     return false;
    }

定義和用法

$.inArray() 函式用於在陣列中查詢指定值,並返回它的索引值(如果沒有找到,則返回-1)

提示:源陣列不會受到影響,過濾結果只反映在返回的結果陣列中。

語法

$.inArray( value, array [, fromIndex ] )

引數 描述
value 任意型別 用於查詢的值。
array Array型別 指定被查詢的陣列。
fromIndex 可選。Number型別 指定從陣列的指定索引位置開始查詢,預設為 0

splice() 方法

定義和用法

splice() 方法向/從陣列中新增/刪除專案,然後返回被刪除的專案。

註釋:該方法會改變原始陣列。

語法

arrayObject.splice(index,howmany,item1,.....,itemX)
引數 描述
index 必需。整數,規定新增/刪除專案的位置,使用負數可從陣列結尾處規定位置。
howmany 必需。要刪除的專案數量。如果設定為 0,則不會刪除專案。
item1, ..., itemX 可選。向陣列新增的新專案。

返回值

型別 描述
Array 包含被刪除專案的新陣列,如果有的話。

說明

splice() 方法可刪除從 index 處開始的零個或多個元素,並且用引數列表中宣告的一個或多個值來替換那些被刪除的元素。

如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的陣列。

兩個就組成我們的功能。