2017-03-02 213 views
0

假設我有一個數組:var a=[[1,1],[2,2],[3,3],[4,4]]如果我寫一個[1],它返回[2,2]。但是,如果我想返回數組元素[2,2]的索引,如a.indexOf([2,2]),則返回-1,但找不到。有沒有一種優雅的方式來查找數組中的數組元素的索引?查找數組元素的索引

+0

既然你需要一個定製的平等,你可能想'findIndex'。除非你想要ES3解決方案? –

回答

1

您可以使用Array.prototype.findIndex()

var index = a.findIndex(function(el) { 
    return el[0] == 2 && el[1] === 2 
}); 

var index = a.findIndex(function(el) { 
    return el.every(function(n) {return n === 2}) 
});