如何使用map函数在数据集下拥有3个数组,而不是另一个名为“label”的对象。当我尝试在'label'之前放置map函数时,就在构造函数中的'dataset'之后,我得到了关于意外''的奇怪错误。点等。
预期输出
{
colors: blue,
datasets: [
{
label: 'car',
type: 'line',
data: '1'
},
{
label: 'bus',
type: 'line',
data: '5'
},
{
label: 'train',
type: 'line',
data: '10'
}
]
}
function Constructor(colors, label, type, data) {
this.colors = colors;
this.label = label;
this.type = type;
this.data = data;
this.mainData = {
colors: colors,
datasets: [{
label: label.map((label, i) => ({
type: type,
data: data[i]
}))
}]
}
};
var whyYouNoWork = new Constructor('blue', ['car', 'bus', 'train'], 'line', ['1', '5', '10']);
console.log(whyYouNoWork.mainData);
答案 0 :(得分:2)
您可以使用函数map
构建所需的输出:
function Constructor(colors, label, type, data) {
this.colors = colors;
this.label = label;
this.type = type;
this.data = data;
this.mainData = { colors, datasets: label.map((label, i) => ( { label, type, data: data[i] } ) ) }
};
var whyYouNoWork = new Constructor('blue', ['car', 'bus', 'train'], 'line', ['1', '5', '10']);
console.log(whyYouNoWork.mainData);

.as-console-wrapper { max-height: 100% !important; top: 0; }