1. 程式人生 > >js中,刪除陣列中指定的某個元素

js中,刪除陣列中指定的某個元素

首先可以給JS的陣列物件定義一個函式,用於查詢指定的元素在陣列中的位置,即索引,程式碼為:

/**

 * 給JS的陣列物件定義一個函式,用於查詢指定的元素在陣列中的位置,即索引
 * @param val
 * @returns {Number}
 */
Array.prototype.aindexOf = function(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] == val) return i;
}
return -1;

};

然後使用通過得到這個元素的索引,使用js陣列自己固有的函式去刪除這個元素:
程式碼為:

/**
 * 通過得到這個元素的索引,使用js陣列自己固有的函式去刪除這個元素
 * @param val
 */
Array.prototype.remove = function(val) {
var index = this.aindexOf(val);
if (index > -1) {
this.splice(index, 1);
}

};

這樣就構造了這樣一個函式,比如我有一個數組:

var temp=['abc','ab','df','fd'];

加入我們要刪除其中的ab,那麼:

temp.remove('ab');即可

刪除的陣列的某一項

splice(index,len,[item])    註釋:該方法會改變原始陣列。

splice有3個引數,它也可以用來替換/刪除/新增陣列內某一個或者幾個值

index:陣列開始下標        len: 替換/刪除的長度       item:替換的值,刪除操作的話 item為空

如:arr = ['a','b','c','d']

刪除

arr.splice(1,1)   //['a','c','d'] 刪除起始下標為1,長度為1的一個值,len設定的1,如果為0,則陣列不變

arr.splice(1,2)  //['a','d'] 刪除起始下標為1,長度為2的一個值,len設定的2

替換

arr.splice(1,1,'ttt')        //['a','ttt','c','d'] 替換起始下標為1,長度為1的一個值為‘ttt’,len設定的1

arr.splice(1,2,'ttt')        //['a','ttt','d'] 替換起始下標為1,長度為2的兩個值為‘ttt’,len設定的1

新增 ----  len設定為0,item為新增的值

arr.splice(1,0,'ttt')        //['a','ttt','b','c','d'] 表示在下標為1處新增一項'ttt'

2:delete      

delete刪除掉陣列中的元素後,會把該下標出的值置為undefined,陣列的長度不會變

如:delete arr[1]  //['a', ,'c','d'] 中間出現兩個逗號,陣列長度不變,有一項為undefined

相關推薦

js刪除陣列指定某個元素

首先可以給JS的陣列物件定義一個函式,用於查詢指定的元素在陣列中的位置,即索引,程式碼為: /**  * 給JS的陣列物件定義一個函式,用於查詢指定的元素在陣列中的位置,即索引  * @param val  * @returns {Number}  */ Array.pro

bootstrap 多選按鈕實現方式js,jQuery刪除陣列指定元素

bootstrap有許多,非常漂亮的設計,不用自己苦惱於css 的使用。 bootstrap使用,實現多選方法: 1、使用bootstrap的表格標籤,表格內容為PHP返回前端資料, <table class="table table-hover table-bordered"

js刪除陣列某個特定的物件

var result.list = [{"key":"預約 ","value":"預約  "},{"key":"現場結束 ","value":"現場結束"},{"key":" 轉運維","valu

JS刪除陣列指定的物件

​​    封裝刪除方法 /**刪除陣列中的某一個物件 _arr:陣列 _obj:需刪除的物件 */ function removeArray(_arr, _obj) { let length = _arr.

Java使用for迴圈刪除陣列某個元素並按原有順序列印

package com.ty.demo;//使用for迴圈刪除陣列中的某個元素,並按照原有順序打印出來public class Demo03 {public static void main(String[] args) {//定義一個數組String[] strs = {

js怎麼刪除陣列重複的元素

刪除陣列中重複的元素 剛剛看到這篇文章,就立馬過來收藏,雖然還沒看懂,希望我再研究一下面是統計陣列中重複元素的個數 var arr = []; var result = [‘2017年6月’, ‘2017年6月’, ‘2017年6月’, ‘2017年5月’, ‘2017年5月’, ‘20

js 刪除陣列某一項的幾種方法總結

第一種:改變原陣列 借用原生陣列方法:splice(index,len,[item])  剪接 借用原生物件方法:delete array[index] + array.slice(0, index).concat(array.slice(index, array.length-1))

php一個簡單方法實現刪除陣列某個

/** * * @param array $arr // 要新增或刪除值的陣列 * @param string $value // 要刪除的值 * @return array */ function deleteByValueToArray($arr, $value){ if(!i

mongodb 刪除陣列集合的某個欄位

2018年11月13日 18:28:09 JZ_CHIA 閱讀數:4 個人分類: mongo

JS 求一組陣列的最大值最小值(不包括0)。

<body> <script type="text/javascript"> var arr=[]; do{ var num=prompt("請輸入一個整數:") if(num!=0){

Three.js 從記憶體刪除sceneremove的模型資料釋放記憶體

當需要動態更新顯示不同的模型,從 scene 中 remove 的模型還會在記憶體中,如果多次進行更新操作就會大量佔用記憶體資源,甚至使瀏覽器崩潰,以下程式碼功能為從記憶體中清除模型資料。 程式碼 /** * 清除模型,模型中有 group 和 scene,需要進行判斷 *

Javscript刪除陣列指定元素

把陣列中某個值刪除,並返回新陣列,需要遍歷舊陣列找到要刪除的元素 /* * 刪除陣列中指定值 */ Array.prototype.remove=function(value){     var len = this.length;   for(var i=0,n=0

【leetcode】刪除陣列指定要求的重複的數字

1. 給定一個數組和一個值,刪除該值的所有例項,並返回新長度。 不要為另一個數組分配額外的空間,您必須使用常量記憶體來進行此操作。 元素的順序可以改變。 Given an array and a v

jquery刪除陣列的資料陣列的複製

1、第一種方法:根據陣列下標刪除資料 for(var i=0;i<arr1.length;i++){ arr1.splice(i,1) console.log(arr1); } arr1的長度是在改變的,i越來越大,arr1.length越來越小,這樣會導致刪除不了

js簡單刪除陣列任意元素

////刪除陣列中任意元素 ///arr需要去除元素的陣列 ///str需要去除的內容 function spliceArr(arr,str){ for (var i = 0; i < arr.length; i++) { if (arr

JavaScript刪除陣列指定元素

下面的程式碼使用了兩種方式刪除陣列的元素,第一種定義一個單獨的函式,第二種為Array物件定義了一個removeByValue的方法,呼叫非常簡單定義函式removeByValue進行元素刪除 function removeByValue(arr, val) {   for

如何把int陣列的相同元素陣列刪除

public class demonew {public static void main(String[] args) {int[] n = { 1, 2, 3, 4, 5,3,3,3};System.out.print("刪除前:");show(n);int p=0;  

Python字串連線、刪除陣列指定元素、記錄指令碼執行時間

1、Python中字串連線 a = "I am " b = 20 c = a + '%d'%b '%d'%b將b轉換成為字串格式,”+“對兩個字串進行拼接。 2、刪除陣列中指定元素 Python中陣列的使用:http://blog.163.com/jackylau_v/

根據key刪除陣列指定元素

php陣列中元素的存在方式是以鍵值對的方式('key'=>'value'),有時 候我們需要根據鍵刪除陣列中指定的某個元素。 function bykey_reitem($arr,

filter()刪除陣列指定內容的元素不依據下標

返回陣列 ages 中所有元素都大於 18 的元素: var ages = [32, 33, 16, 40]; function checkAdult(age) {     return age >= 18; } function myFunction() {