從js陣列中刪除指定元素是我們每個人都遇到的問題,網路上這方面的資料也很多,但有的時間過於久遠,有的內容不夠全面,所以自己來整理下,這篇文章主要來為大家總結介紹了關於JavaScrip數組刪除特定元素的多種方法,需要的朋友可以參考下。
前言
可能一說刪除陣列特定元素你估計不只一種方法可以實現,那麼下面且來看看我總結的這幾種方法,可能會對你有幫助!話不多說了,來一起看看詳細的介紹吧。
來源陣列
var arr = ["George", "John", "Thomas", "James", "Adrew", "Martin"];
偽刪除
#什麼是偽刪除呢? 就是說將陣列元素值設為null;
arr[ arr.indexOf( 'Thomas' ) ] = null;
刪除後的陣列是這個樣子的:
["George", "John", null, "James", "Adrew", "Martin"]
不過要注意, 這表示陣列Array也就是變數arr的長度保持不變
完全刪除
#是什麼是完全刪除呢? 這個問題你可能從字面上也能想得到就是真正的刪除數組Array的元素值, 並且會改變數組的長度, 可以通過內置數組對象Array的splice方法來實現這個需求!說到splice這個方法就要說一說它的具體參數了:
Array.prototype.splice = function(start,deleteCount,items) {};
上面是內建物件Array的splice方法原型定義, 中文意思呢是:剪接, 其參數的意義是:
start: 起點索引值
#deleteCount: 要刪除的元素個數
items: 刪除後替換/追加的元素
參數不加時就表示刪除元素, 並且也要結合 deleteCount 的參數值
如果 deleteCount 為 1, items 參數位置給予一個參數值, 則表示替換
若deleteCount 為1, items 參數位置給多於一個的參數值, 則表示替換及追加元素
arr.splice( arr.indexOf( null ), 1 );刪除後的陣列是這個樣子的:
["George", "John", "James", "Adrew", "Martin"]既然說到了splice方法就順便再說一下它的其它功能, 如替換元素, 追加元素等操作吧!
splice函數 - 取代元素
##
["George", "John", "James", "Adrew", "Martin"]
想要將陣列元素James 替換為Tom
arr.splice( arr.indexOf( 'James' ), 1, 'Tom' );
替換後的陣列結構是這個樣子的:
["George", "John", "Tom", "Adrew", "Martin"]
splice函數- 取代並追加元素
現在目前陣列結構是這樣的:
["George", "John", "Tom", "Adrew", "Martin"]
想要將陣列元素Tom 替換為Judy 並追加Linda 和Alisa
#
arr.splice( arr.indexOf( 'Tom' ), 1, 'Judy', 'Linda', 'Alisa' );
取代及追加後的陣列結構是這個樣子的:
["George", "John", "Judy", "Linda", "Alisa", "Adrew", "Martin"]
splice函數- 追加元素
追加元素你可以選擇任意位置這取決於你的特定需求, 關鍵是在於start 的取值索引位置而已!目前陣列結構如下所示:
["George", "John", "Judy", "Linda", "Alisa", "Adrew", "Martin"]
比如說要在Linda 和Alisa 之間追加Bill 和Blake
arr.splice( arr.indexOf( 'Linda' ) + 1, 0, 'Bill', 'Blake' );
追加後的陣列結構是下面這個樣子的:
["George", "John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew", "Martin"]
- 起點位置
- arr.indexOf( 'Linda' ) + 1
就是在陣列元素Linda 之後了
#刪除元素個數參數這裡設定的是0 這個是追加元素的關鍵, 也就是說不刪除元素 - 'Bill', 'Blake' 這個呢就是內置物件Array的splice方法的最後一個參數items 它表示0個是和多個, 根據deleteCount 參數值不同表示的含義也會不同, 這裡deleteCount 參數是0 並且items 又有兩個值來表示這個參數, 所示說就是追加元素值'Bill', 'Blake'
刪除數組中第一個元素
arr.shift();
刪除後的陣列是這個樣子的:
["John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew", "Martin"]
刪除陣列中最後一個元素
arr.pop();
刪除後的陣列是這個樣子的:
["John", "Judy", "Linda", "Bill", "Blake", "Alisa", "Adrew"]
以上就是這篇文章的所有內容,希望對大家學習JavaScript提供到幫助! !
相關推薦:
JavaScript模組模式詳解#javaScript封裝的各種寫法
以上是JavaScrip數組刪除特定元素的幾種方法總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavaScript起源於1995年,由布蘭登·艾克創造,實現語言為C語言。 1.C語言為JavaScript提供了高性能和系統級編程能力。 2.JavaScript的內存管理和性能優化依賴於C語言。 3.C語言的跨平台特性幫助JavaScript在不同操作系統上高效運行。

JavaScript在瀏覽器和Node.js環境中運行,依賴JavaScript引擎解析和執行代碼。 1)解析階段生成抽象語法樹(AST);2)編譯階段將AST轉換為字節碼或機器碼;3)執行階段執行編譯後的代碼。

Python和JavaScript的未來趨勢包括:1.Python將鞏固在科學計算和AI領域的地位,2.JavaScript將推動Web技術發展,3.跨平台開發將成為熱門,4.性能優化將是重點。兩者都將繼續在各自領域擴展應用場景,並在性能上有更多突破。

Python和JavaScript在開發環境上的選擇都很重要。 1)Python的開發環境包括PyCharm、JupyterNotebook和Anaconda,適合數據科學和快速原型開發。 2)JavaScript的開發環境包括Node.js、VSCode和Webpack,適用於前端和後端開發。根據項目需求選擇合適的工具可以提高開發效率和項目成功率。

是的,JavaScript的引擎核心是用C語言編寫的。 1)C語言提供了高效性能和底層控制,適合JavaScript引擎的開發。 2)以V8引擎為例,其核心用C 編寫,結合了C的效率和麵向對象特性。 3)JavaScript引擎的工作原理包括解析、編譯和執行,C語言在這些過程中發揮關鍵作用。

JavaScript是現代網站的核心,因為它增強了網頁的交互性和動態性。 1)它允許在不刷新頁面的情況下改變內容,2)通過DOMAPI操作網頁,3)支持複雜的交互效果如動畫和拖放,4)優化性能和最佳實踐提高用戶體驗。

C 和JavaScript通過WebAssembly實現互操作性。 1)C 代碼編譯成WebAssembly模塊,引入到JavaScript環境中,增強計算能力。 2)在遊戲開發中,C 處理物理引擎和圖形渲染,JavaScript負責遊戲邏輯和用戶界面。

JavaScript在網站、移動應用、桌面應用和服務器端編程中均有廣泛應用。 1)在網站開發中,JavaScript與HTML、CSS一起操作DOM,實現動態效果,並支持如jQuery、React等框架。 2)通過ReactNative和Ionic,JavaScript用於開發跨平台移動應用。 3)Electron框架使JavaScript能構建桌面應用。 4)Node.js讓JavaScript在服務器端運行,支持高並發請求。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3漢化版
中文版,非常好用

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具