我知道該項目的名稱,並想知道它在陣列中的位置,我該怎麼做?如何找出數組中包含的項目的位置?
回答
["a","b","c","d","e"].indexOf("c")
2
+1對OP的說明:請注意,並非所有實現都有此功能;如果不存在,請參閱馬克·比爾斯的答案。 – 2010-02-07 15:14:00
使用Array的indexOf
方法。如果沒有,請添加它(代碼示例here或其他地方)。
如果你想找到它的名稱屬性的值,這樣做:
for (var i = 0; i < this.length; i++) {
if(this[i].name == name) {
return i;
}
}
return -1;
不應該是'if(!Array.prototype.indexOf){'?我很確定'Array'(構造函數)從來沒有'indexOf'。 – 2010-02-07 15:14:35
感謝您的鏈接。我不知道那件事。 – 2010-02-07 15:20:15
@ T.J。 Crowder:在Mozilla的實現中,我不確定爲什麼構造函數有原型成員...'Array.hasOwnProperty('indexOf')== true;'...很奇怪你不覺得嗎? – CMS 2010-02-07 15:26:26
你可以通過數組循環:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, item) {
for (var i = 0; i < array.length; i++) {
if (array[i] === item) {
return i;
}
}
return -1;
}
alert(findIndex(array, 'item2'));
,或者使用比較器功能更復雜的類型:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, comparer) {
for (var i = 0; i < array.length; i++) {
if (comparer(array[i])) {
return i;
}
}
return -1;
}
var index = findIndex(array, function(item) {
return item === 'item2' ;
});
- 1. 您的項目位置包含空白。
- 2. 如何查找未包含在MongoDB集合中的數組中的項目
- 3. 如何在我的設置項目中包含dotfuscated輸出?
- 4. 查找數組中包含值的位置
- 5. 如何找出項目中調用System.getProperty()方法的位置?
- 6. 如何查找哈希數組中包含的項?
- 7. 如何找出隊列是否包含其他位置的最後一項?
- 8. 搜索項目的數組。如何顯示位置項目?
- 9. 在javascript數組中包含項目
- 10. 如何在c#中找到一個數組中項目的位置
- 11. 如何確定包含大多數項目的數組?
- 12. 如何查找層次結構中的數據項目位置?
- 13. 查找,如果目前的windows.pathname包含位置,以利A HREF
- 14. 如何找到包含該位置的列表中的字母位置?
- 15. LINQ:查找列表中包含項目清單中的項目
- 16. 在項目中包含信任庫文件的位置
- 17. Visual Studio:如何爲包含32位和64位平臺的項目設置Qt?
- 18. 如何找到包含在jQuery中的標題eq位置
- 19. 如何在argparse互斥組中包含一個位置參數?
- 20. 如何將項目附加到包含json數組的文件?
- 21. 如何找出數字(18,2)是否包含小數位?
- 22. 如何找到包含在MFC VS項目中的所有DLL?
- 23. 如何從其他Maven項目中包含配置數據?
- 24. 如何在包含babel,Node.js和webpack的項目中包含jQuery?
- 25. 如何在Android Studio中的庫項目中包含庫項目
- 26. 如何只顯示數組中包含的特定數量的項目?
- 27. 如何找到出現在我的Xcode項目中的.db文件的位置?
- 28. 包含的數組中的項
- 29. 如何在NetBeans中組織一個包含練習的項目?
- 30. XPath位置,如果父項包含
這是什麼類型的產品? – 2010-02-07 15:01:16
您的意思是,您知道數組中項目的值,並且您想知道數字鍵,或者您知道對象/關聯數組中項目的鍵/屬性名稱,並且想知道該位置? – JAL 2010-02-07 15:03:59
缺少規格:如果元素不止一次出現在數組中,您希望發生什麼?如果找不到該元素會發生什麼? – 2010-02-07 15:04:20