Javascript - 索引数组/列表中的每个元素

时间:2016-08-22 17:18:45

标签: javascript jquery

> var lst = ['red', 'blue', 'yellow'];
> someFunc(lst);
[('red', 0), ('blue', 1), ('yellow', 2)]

有没有办法在Javascript / JQuery中执行此操作?我知道我可以简单地创建一个for循环并将每个原始列表的元素转换为我想要的,但我想知道是否有内置的方法来执行此操作。

谢谢!

3 个答案:

答案 0 :(得分:2)

您可以使用Array#map并为每个项目返回一个包含值和索引的数组。



<input id="input-box">
<div id="output-box"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您可以利用map()函数为您提供数组中每个项目的值和索引:

lst.map(function(v, i) { return { value: v, index: i }; } );

请参阅MDN

答案 2 :(得分:0)

使用ES6中的map方法:

var lst = ['red', 'blue', 'yellow'];
var array = lst.map((item, index) => [item, index])
console.log(array); // [ [ 'red', 0 ], [ 'blue', 1 ], [ 'yellow', 2 ] ]