我有一个有一组数字的对象
> var size = d3.values(data[0]);
>size
output:
["0", "14.71", "50.0", "35.29"]
>typeof(size);
output:
"object"
Run Code Online (Sandbox Code Playgroud)
我想总结宽度并获得如下输出:
[0,14.71,64.71,100]
但是我得到的输出如下:
>var width = [size[0],
size[0]+size[1],
size[0]+size[1]+size[2],
size[0]+size[1]+size[2]+size[3]];
>width
output:
["0", "014.71", "014.7150.0", "014.7150.035.29"]
Run Code Online (Sandbox Code Playgroud)
请帮我解决这个问题.提前致谢...
Nin*_*olz 11
您可以使用Array#mapand thisArgs和隐式转换来为元素编号.
var data = ["0", "14.71", "50.0", "35.29"],
width = data.map(function (a) {
return this.count += +a;
}, { count: 0});
console.log(width);Run Code Online (Sandbox Code Playgroud)
ES6没有使用thisArg(this不能使用箭头函数),但是有一个闭包count.
var data = ["0", "14.71", "50.0", "35.29"],
width = data.map((count => a => count += +a)(0));
console.log(width);Run Code Online (Sandbox Code Playgroud)