【发布时间】:2021-04-25 15:43:33
【问题描述】:
我正在尝试以特定格式组合两个数组,但我无法想象我做错了什么。
这是我想要的输出结果:
[ data: [
{value: 100, name: 'January'},
{value: 30, name: 'February'},
{value: 150, name: 'March'},
{value: 85, name: 'April'},
{value: 60, name: 'May'},
{value: 20, name: 'June'}
],
radius: '50%' ]
这是我的代码:
var sales = ["100", "30", "150", "85", "60", "20"];
var months = ["January", "February", "March", "April", "May", "June"];
var rad = "50%";
var combined = sales.map(function combine(dataItem, index) {
return {
data: [{"value":dataItem, "name":months[index]}],
radius: rad
};
}).filter(function removeEmpty(item) {
return item.data.length;
});
console.log(combined);
【问题讨论】:
-
“这是我想要的输出结果” - 这是可能的,但是当你想要一个对象时,你不应该滥用数组。跨度>
-
这是一个调试器的好例子。
-
radius来自哪里? -
@outis 感谢您的回答,是的,我有 jsfiddle 我在过去的一个小时里一直在尝试修复它,但没有任何问题 jsfiddle.net/zfo3ag08
-
@SAM 你好,半径总是 50%,它是需要在对象内部的“定义值”。但是,编辑了 sn-p。谢谢
标签: javascript arrays