3 回答

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超2個(gè)贊
您可以使用indexOf:
var imageList = [100,200,300,400,500];
var index = imageList.indexOf(200); // 1
如果無(wú)法在數(shù)組中找到值,則將得到-1。

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊
對(duì)于對(duì)象陣列使用map與indexOf:
var imageList = [
{value: 100},
{value: 200},
{value: 300},
{value: 400},
{value: 500}
];
var index = imageList.map(function (img) { return img.value; }).indexOf(200);
console.log(index);
在現(xiàn)代瀏覽器中,您可以使用findIndex:
var imageList = [
{value: 100},
{value: 200},
{value: 300},
{value: 400},
{value: 500}
];
var index = imageList.findIndex(img => img.value === 200);
console.log(index);
它是ES6的一部分,并受 Chrome,F(xiàn)F,Safari和Edge支持

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
這是在javascript中的復(fù)雜數(shù)組中查找值索引的另一種方法。希望確實(shí)能幫助到別人。讓我們假設(shè)我們有一個(gè)如下的JavaScript數(shù)組,
var studentsArray =
[
{
"rollnumber": 1,
"name": "dj",
"subject": "physics"
},
{
"rollnumber": 2,
"name": "tanmay",
"subject": "biology"
},
{
"rollnumber": 3,
"name": "amit",
"subject": "chemistry"
},
];
現(xiàn)在,如果我們需要選擇數(shù)組中的特定對(duì)象。讓我們假設(shè)我們要查找名稱(chēng)為T(mén)anmay的學(xué)生的索引。
我們可以通過(guò)遍歷數(shù)組并比較給定鍵的值來(lái)做到這一點(diǎn)。
function functiontofindIndexByKeyValue(arraytosearch, key, valuetosearch) {
for (var i = 0; i < arraytosearch.length; i++) {
if (arraytosearch[i][key] == valuetosearch) {
return i;
}
}
return null;
}
您可以使用該函數(shù)來(lái)查找特定元素的索引,如下所示,
var index = functiontofindIndexByKeyValue(studentsArray, "name", "tanmay");
alert(index);
添加回答
舉報(bào)