91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

淺談js數組splice刪除某個元素爬坑

發布時間:2020-10-15 12:06:34 來源:腳本之家 閱讀:200 作者:壞丶毛病 欄目:開發技術

先來看下幾個概念:

// splice:返回從原始數組中刪除的項(如果沒有任何刪除,則返回空數組)
    // 當指定2個參數時,表示刪除
    // 當指定3個參數,且第2個參數為0時表示插入
    // 當指定3個參數,且第2個參數為1時表示替換

本次就拿刪除舉例,本身我們想刪除數組中的某個指定元素,我們需要知道它所在數組中的下標,我們可以用 數組.indexOf獲取它所在的下標,然后拿splice刪除這個元素。

本身是沒問題

代碼如下:

var arr = ["張三","李四","王五","趙六"];

// 刪除王五
arr.splice(arr.indexOf("王五"),1);

但是。。。。。問題就來了。

如果放到for循環中,比如循環數組,當某個條件成立的時候,我們需要刪除某個指定的元素。

但是循環中,i每次都是+1的,但是我們刪除某個元素后,下標就變了,相應的位置發生變化,i的值加一后,就會跳過下一個元素。

坑啊。。。

所以,在刪除某個元素的時候,我們手動把 i的值再減一,這樣就會避免出現跳過某個元素的問題。

例如:循環數組,當 DasOperation  屬性值等于 沒變 的時候,從數組中刪除這條數據,然后i-1

// 刪除沒有變化的,不傳遞到后臺
for (let i = 0; i < this.CurrJobData.Content.length; i += 1) {
  if (this.CurrJobData.Content[i].DasOperation === '沒變') {
    this.CurrJobData.Content.splice(this.CurrJobData.Content.indexOf(this.CurrJobData.Content[i]), 1);
    i -= 1;// 必須對i減去1,否則后面的一個元素會被跳過去
  }
}

好了,為避免更多小伙伴遇坑,貼出來,希望有幫助。

 到此這篇關于淺談js數組splice刪除某個元素爬坑的文章就介紹到這了,更多相關js splice刪除某個元素內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

松原市| 通山县| 陆良县| 于都县| 遵义县| 长岭县| 宁河县| 浏阳市| 海原县| 宁陵县| 仪陇县| 桦川县| 金乡县| 礼泉县| 庆城县| 阿拉善左旗| 襄城县| 汨罗市| 鹤壁市| 成都市| 江永县| 宁远县| 夏邑县| 漯河市| 岱山县| 鄂温| 堆龙德庆县| 宁蒗| 玉林市| 修水县| 任丘市| 汉中市| 铜山县| 孟村| 柳河县| 哈巴河县| 民权县| 呼图壁县| 芜湖市| 项城市| 莎车县|