欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript從數(shù)組中刪除特定數(shù)據(jù)的方法總結(jié)

 更新時(shí)間:2022年08月05日 10:19:14   作者:櫻舞  
js數(shù)組是js部分非常重要的知識(shí),有時(shí)我們有這么個(gè)需求js數(shù)組刪除指定元素,下面這篇文章主要給大家介紹了關(guān)于JavaScript從數(shù)組中刪除特定數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下

前言

增刪改查是我們?nèi)粘i_(kāi)發(fā)中的最基本任務(wù),在JavaScript中我們經(jīng)常需要從數(shù)據(jù)組刪除特定的數(shù)據(jù)項(xiàng)。然而,JavaScript數(shù)組中并沒(méi)有提供刪除特定數(shù)據(jù)項(xiàng)的方法。所以我們必須使用替代的方法,來(lái)從javaScript中刪除特定數(shù)據(jù)項(xiàng)。

如何在Javascript中刪除特定的數(shù)組項(xiàng)

1:使用 filter()

使用現(xiàn)代 Javascript 刪除特定數(shù)組項(xiàng)的最簡(jiǎn)單方法是使用過(guò)濾器。讓我們看一個(gè)簡(jiǎn)單的例子:

let myArr = [ "??", "??", "??", "??" ];


let removedArr = myArr.filter((x) => x !== "??");
console.log(removedArr);

當(dāng)我們的數(shù)組中的每一個(gè)數(shù)據(jù)想都是唯一的時(shí)候,他是正常工作的,但是當(dāng)我們的存在重復(fù)項(xiàng)的時(shí)候,此時(shí)如果你只想刪除一個(gè),保留其他重復(fù)的,這種方式是無(wú)法做到的。

let myArr = [ "??", "??", "??", "??" ];


let removedArr = myArr.filter((x) => x !== "??");
console.log(removedArr);

由于我們有兩個(gè)青蘋(píng)果,并且新數(shù)組過(guò)濾掉了所有青蘋(píng)果,因此我們?cè)谑褂么朔椒〞r(shí)實(shí)際上刪除了兩個(gè)項(xiàng)目。如果我們只想刪除一個(gè)元素,我們必須使用另一種方法。

2:使用 indexOf() 和 splice()

indexOf() 方法可返回某個(gè)指定的字符串值在字符串中首次出現(xiàn)的位置。如果沒(méi)有找到匹配的字符串則返回 -1。 splice() 方法用于添加或刪除數(shù)組中的元素。注意:這種方法會(huì)改變?cè)紨?shù)組。 這種方式與上面的區(qū)別在于:

  • 首先,它改變了原始數(shù)組——所以我們不在這里復(fù)制。原始數(shù)組將被改變。
  • 其次,它使用兩個(gè)函數(shù)——首先我們獲取indexOf要?jiǎng)h除的數(shù)組項(xiàng),然后我們splice獲取數(shù)組以刪除單個(gè)項(xiàng)。

這是一個(gè)例子:

let myArr = [ "??", "??", "??", "??" ];
let getLocation = myArr.indexOf("??");
myArr.splice(getLocation, 1);
// myArr now becomes [ "??", "??",  "??" ];
console.log(myArr);

附:js delete方法刪除指定位置的數(shù)組元素

delete方法可以通過(guò)數(shù)組的下標(biāo)將js數(shù)組中的一個(gè)元素從指定位置上刪除,且刪除掉數(shù)組中的元素后,會(huì)把該下標(biāo)出的值置為undefined,數(shù)組的長(zhǎng)度不會(huì)變。

語(yǔ)法:

delete.數(shù)組[數(shù)組下標(biāo)];/*數(shù)組下標(biāo)控制指定位置,下標(biāo)從0開(kāi)始*/

代碼實(shí)例:刪除animal數(shù)組的第二項(xiàng)元素,即:animal[1],然后animal[1]的值會(huì)為:undefined。

<!DOCTYPE html>
<html>
? ? <head>
? ? ? ? <meta charset="UTF-8">
? ? </head>

? ? <body>
? ? ? ? <div class="demo">
? ? ? ? ? ? <p>數(shù)組:cat,elephant,tiger,rabbit;<br>數(shù)組長(zhǎng)度為:4</p>
? ? ? ? ? ? <button onclick="myFunction()">點(diǎn)我--delete刪除元素</button>
? ? ? ? </div>
? ? </body>

? ? <script type="text/javascript">
? ? ? ? function myFunction(){
? ? ? ? ? ?var animal = ["cat", "elephant", "tiger","rabbit"];
? ? ? ? ? ?document.write("<p>數(shù)組:"+animal+"<br>數(shù)組長(zhǎng)度:"+ animal.length+"</p>");
? ? ? ? ? ?var animal1= delete animal[1];
? ? ? ? ? ?document.write("<p>新數(shù)組:"+animal+"<br>刪除元素后,現(xiàn)在為:"+ animal[1]+"<br>數(shù)組長(zhǎng)度:"+ animal.length+"</p>");
? ? ? ? }
? ? </script>
</html>

總結(jié)

盡管在 Javascript 中沒(méi)有直接從數(shù)組中刪除項(xiàng)目的方法,但我們確實(shí)有兩個(gè)工具可以為我們提供足夠的靈活性來(lái)涵蓋幾乎所有有關(guān)刪除數(shù)組項(xiàng)目的場(chǎng)景。

到此這篇關(guān)于JavaScript從數(shù)組中刪除特定數(shù)據(jù)的文章就介紹到這了,更多相關(guān)js數(shù)組刪除特定數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論