合并两个数组然后在javascript中计算它

时间:2018-06-11 21:37:24

标签: javascript

我有

valid_at

然后我想计算数组中的每个索引:

var arr1 = [123, 234, 565];
var arr2 = [2, 5, 1];

var arr = arr1.map(function(num, i) {
    if(i < arr1.length)
        return num + " " + arr2[i];

    return num;
});

它只显示数组为for (var i=0; i<arr.length; i++) { arr[i] = parseFloat(arr[i])/100; } 。但我希望结果为[12.3, 23.4, 56.5]。我做错了吗?

2 个答案:

答案 0 :(得分:1)

试试这个,你不需要多次通过。您可以使用单个映射来获取另一个数组的值。

另外,您不需要检查i是否小于数组的长度。

&#13;
&#13;
var arr1 = [123, 234, 565];
var arr2 = [2, 5, 1];

result = arr1.map((x, i) => (x + '' + arr2[i]) / 100);

console.log(result);
&#13;
&#13;
&#13;

答案 1 :(得分:0)

尝试使用.而不是空格连接数字,然后除以10而不是100并将数字固定为两位小数:

var arr1 = [123, 234, 565];
var arr2 = [2, 5, 1];

var arr = arr1.map(function(num, i) {
    if(i < arr1.length)
        return num + "." + arr2[i];

    return num;
});

for (var i=0; i<arr.length; i++) {
    arr[i] = (parseFloat(arr[i])/10).toFixed(2);
}

console.log(arr);