簡體   English   中英

如何從JQuery數組中刪除最后一個元素?

[英]How to remove the last element from JQuery array?

我想選擇一些DOM元素到克隆對象中,然后我要刪除最后一項。 在Chrome控制台中嘗試后,我發現克隆的長度沒有減少。

Chrome控制台中的示例:

crumbs =  $("span",$("div[style='width:390px;background-color:white;'")[0]).clone();

jQuery.fn.jQuery.init [114]

crumbs.last().remove()

[...]

crumbs.length

114

如您所見,長度仍然是114個元素。 我想念什么?

crumbs.last().remove()從DOM中刪除最后一個匹配的元素,但不會從jQuery對象中刪除它。

要從jQuery對象中移除元素,請使用slice

var withoutLastOne = crumbs.slice(0, -1);

¹實際上,這將創建一個與少一個元素匹配的新對象,而不用修改現有對象。 您通常不會在意區別,但應該注意這一點。

要從數組中刪除最后一個元素,您也可以使用以下代碼。

var arr = ["item1", "item2", "item3", "item4"];
arr.pop();

演示版

正如人們所說, .remove()從DOM中刪除元素。 除了在最終結果上使用slice ,另一個選擇是在克隆元素之前使用jquery的過濾:

crumbs =  $("span",$("div[style='width:390px;background-color:white;'")[0]).not(':last').clone();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM