編寫一個 JavaScript 程式,查詢陣列中特定元素的索引?
陣列是一個物件,它以順序方式包含多個相同資料型別的值。換句話說,我們可以說陣列是 JavaScript 中的一種特殊型別的物件。
語法
我們可以在 JavaScript 中以兩種方式建立陣列。語法如下所示:
var arr = [val1, val2, …]; var arr = new Array(“val1”, “val2”, …)
現在讓我們來看一個簡單的 JavaScript 程式,建立一個數組並列印其索引值:
var arr = [1,2,3,4,5]; document.write(arr[0]);
這裡,程式返回陣列中第 0 個索引的內容,即 '1',作為輸出。
陣列的元素
元素是陣列中存在的值,索引指示元素在陣列中的位置。
陣列的每個實體(值)稱為元素,這些元素的位置由一個稱為索引的數值指示。索引從 0 開始,到 **陣列長度-1** 結束。在下圖中,**22** 是陣列的一個元素,其索引為 **0**。

使用 for 迴圈
使用 for 迴圈和 if 條件,我們可以在給定陣列中找到元素的索引。
for 迴圈用於遍歷給定陣列的所有元素,其中 'i' 表示陣列的索引,並使用條件語句 **if**,我們可以將每個元素與所需的元素(要搜尋的元素)進行匹配,並列印匹配元素的索引。
為了查詢陣列中特定元素的索引,我們有各種方法。讓我們逐一討論它們並提供相應的示例。
示例 1
在以下示例中,我們採用硬編碼的輸入值,並使用 for 迴圈查詢該值的索引。我們首先建立一個包含一些元素的陣列,然後使用 for 迴圈獲取所有陣列元素,並使用條件語句進行比較。
<!DOCTYPE html> <html lang="en"> <head> <title>Array Index</title> </head> <body> <script> var subjects = ["English", "Hindi", "Science", "Mathematics"]; for(let i = 0; i<subjects.length; i++){ if(subjects[i] == 'Hindi') document.write("Index of particular element is = " + i); } </script> </body> </html>
示例 2
讓我們來看另一個示例,在這個示例中,我們將從使用者那裡獲取輸入,並迭代地比較元素以查詢輸入元素的索引:
<!DOCTYPE html> <html lang="en"> <head> <title>Array Index</title> </head> <body> <script> var subjects = ["English", "Hindi", "Science", "Mathematics"]; var sname = prompt("Enter a subject name: ") for(let i = 0; i<subjects.length; i++){ if(subjects[i] == sname) document.write("Index of particular element is = " + i); } </script> </body> </html>
使用 indexOf() 方法
JavaScript 中的 **indexOf()** 方法用於檢索陣列中特定元素的索引。
JavaScript **indexOf()** 方法接受一個表示我們需要查詢的元素的字串值作為引數,並返回該特定元素的位置。如果未找到該值,則返回 -1。以下是此方法的語法:
語法
arr.indexOf(char)
示例
在以下程式中,我們使用 JavaScript 中名為 indexOf() 的內建方法,該方法查詢陣列中元素的索引。
<!DOCTYPE html> <html lang="en"> <head> <title>Array Index</title> </head> <body> <script> var color = ['red', "black", 'green', 'orange', 'yellow']; var cname = prompt("Enter a color name: "); var index = color.indexOf(cname); document.write("Index of particular element is = " + index); </script> </body> </html>
使用 findIndex() 方法
**findIndex()** 是 JavaScript 中的內建方法,我們可以使用此方法查詢陣列中特定元素的索引。
語法
以下是此方法的語法:
var index = arr.findIndex(varibale => variable.property(=,>,===) value;
示例
在以下示例中,我們使用 **findIndex()** 方法查詢指定元素的索引。使用此方法,我們找到從終端使用者獲取的輸入元素的索引,並列印輸出。
<!DOCTYPE html> <html lang="en"> <head> <title>Array Index</title> </head> <body> <script> var arr = [1,2,3,4,5,6]; var num = Number(prompt("Enter a number:-")); var index = (element) => element === num; console.log(arr.findIndex(index)); document.write("Index of particular element is = "+ arr.findIndex(index)); </script> </body> </html>
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP