繁体   English   中英

构建数组以显示索引号

[英]build arrays to show index number

我有一个数组,看起来像:

var myArray = [12, 24, 36, 48, 60, 15, 30];

我需要从中构建一个新的数组数组,以显示新数组中原始数组的索引号。 最终结果应如下所示:

var myNewArray = [
    [1, 12],
    [2, 24],
    [3, 36],
    [4, 48],
    [5, 60], 
    [6, 15],
    [7, 30]
];

您可以使用Array.prototype.map() ,然后根据该数组的值和索引生成新数组。

演示版

var myArray = [12, 24, 36, 48, 60, 15, 30],
    newArray = myArray.map(function (value, index) {
        return [index + 1, value];
    });

仅供参考:-JavaScript数组的索引为零:数组的第一个元素的索引为0

var myArray= [12, 24, 36, 48, 60, 15, 30], 
myArrayIndexed= myArray.map(function(itm, i){
    return [i+1, itm];
});
myArrayIndexed.join(']\n[');


/* returned value: */ [
    [1, 12],
    [2, 24],
    [3, 36],
    [4, 48],
    [5, 60],
    [6, 15],
    [7, 30]
]

就这么简单:

var myArray = [12, 24, 36, 48, 60, 15, 30];
var myNewArray = [];
for (var i = 0; i < myArray.length; i++) {
    myNewArray.push([i+1,myArray[i]]);//or just i depending on the index you need
}

甚至更快的方法是缓存数组的长度:

for (var i = 0, var l = myArray.length; i < l; i++) {}

到目前为止,据我所知和研究,Javascript的for循环比遍历数组的数组映射要快。 是一个有趣的基准。

希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM