判斷方法:1、使用indexOf()方法,語法「arr.indexOf(要找的值)」;2、使用「arr.find()」方法;3、使用「array.findIndex( )」方法;4、使用「$.inArray('要找的值',arr)」方法。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
Js判斷陣列中是否存在某個元素
#方法一:indexOf(item,start);
Item:要找的值;
#start:可選的整數參數,缺省則從起始位子開始尋找。
indexOf();傳回元素在陣列中的位置,若沒有則回傳-1;
範例:var arr=['aaa','bbb' ,'ccc','ddd','eee'];
var a=arr.indexOf('ddd'); console.log(a); //3 var b=arr.indexOf('d'); console.log(b); //-1
我通常的用法:if(arr.indexOf(要找的元素)>-1){元素存在的操作};
indexOf()無法找出NaN
方法二:arr.find();
Arr.find()的參數是回呼函數,陣列所有元素會遍歷這個回呼函數,直到找到第一個傳回值為true的元素,然後傳回該元素否則回傳undefined;
var arr=['aaa','bbb','ccc','ddd','eee']; var a=arr.find(function(value,index,arr){ return value=='bbb'; }) console.log(a); //bbb,这里返回的不是true,而是返回值为true的这个元素;
我通常的用法:
arr.find(function(value){ If(value==要查找的值){ //所做的操作 } })
#方法三:array.findIndex();
findIndex()和find()的用法相似,find()回傳的是元素,findIndex回傳的是元素的位置。 findIndex();傳回第一個符合條件的陣列元素的位置,如果所有元素都不符合條件則傳回-1;findIndex(),陣列中的每一個元素都會呼叫一次函數,但是當條件傳回true時, findIndex()傳回符合條件的元素的位置,之後的值不會再呼叫執行函數。
var arr=['aaa','bbb','ccc','ddd','eee']; var a=arr.find(function(value,index,arr){ return value=='bbb'; }) console.log(a);//1,后面的值不会再调用函数。
說明:findIndex()和find()可以用來找出NaN;
var arr=['1','2','3',NaN]; var a=arr.find(function(value){ return isNaN(value); }) console.log(a); //NaN
方法四:
#使用jquery的inArray方法,此方法傳回數組在數組中的下標,如果不存在與數組中,那麼返回-1;
var arr=['aaa','bbb','ccc','ddd','eee']; var a= $.inArray('bbb',arr); console.log(a); //1
【推薦學習:javascript高級教程】
以上是javascript數組怎麼判斷是否存在某元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python更适合数据科学和机器学习,JavaScript更适合前端和全栈开发。1.Python以简洁语法和丰富库生态著称,适用于数据分析和Web开发。2.JavaScript是前端开发核心,Node.js支持服务器端编程,适用于全栈开发。

JavaScript不需要安裝,因為它已內置於現代瀏覽器中。你只需文本編輯器和瀏覽器即可開始使用。 1)在瀏覽器環境中,通過標籤嵌入HTML文件中運行。 2)在Node.js環境中,下載並安裝Node.js後,通過命令行運行JavaScript文件。

如何在Quartz中提前發送任務通知在使用Quartz定時器進行任務調度時,任務的執行時間是由cron表達式設定的。現�...

在JavaScript中如何獲取原型鏈上函數的參數在JavaScript編程中,理解和操作原型鏈上的函數參數是常見且重要的任�...

在微信小程序web-view中使用Vue.js動態style位移失效的原因分析在使用Vue.js...

在Tampermonkey中如何對多個鏈接進行並發GET請求並依次判斷返回結果?在Tampermonkey腳本中,我們經常需要對多個鏈...


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Linux新版
SublimeText3 Linux最新版

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

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

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。