JS将数组中的最后一个子项相乘

时间:2017-04-27 12:06:13

标签: javascript jquery

我试图将数组的最后一个子项乘以变量数,以便在图表中使用,但我无法使乘数工作。

这是我的代码:

var data = [12, 19, 3, 5, 2, 3,12,43,60,78,98,130];
data.slice(-6, 13)*1.2;

JSFiddle

3 个答案:

答案 0 :(得分:3)

如果您想获得以下值乘以1.2,

[12, 43, 60, 78, 98, 130]

您可以使用Array#map方法:

var data = [12, 19, 3, 5, 2, 3,12,43,60,78,98,130];
data.slice(-6, 13).map(function(el) { return el * 1.2;})

// => [14.399999999999999, 51.6, 72, 93.6, 117.6, 156]

如果您想将它们保留在数组中,您可以执行以下操作:

var data = [12, 19, 3, 5, 2, 3,12,43,60,78,98,130];
data.map(function(el, i) { return i >= 6 ? el * 1.2 : el});

希望它有所帮助,

祝你好运

答案 1 :(得分:3)

data.slice(-6, 13) - 给你一个数组,你不能乘以数组。你需要循环遍历值并将它们相乘。

var data = [12, 19, 3, 5, 2, 3,12,43,60,78,98,130];
var dataToMultiply = data.slice(-6, 13);
var multipliedData = [];

dataToMultiply.forEach(function(element) {
    multipliedData.push(element * 1.2);
});

console.log(multipliedData);

答案 2 :(得分:3)

这样做:

var test = (data.slice(-6, 13).map(x =>x*1.2));