gpt4 book ai didi

javascript - 函数在传入另一个函数后 trim 值

转载 作者:行者123 更新时间:2023-12-03 04:18:55 25 4
gpt4 key购买 nike

我想让 renderData() 显示 max 中的值。当我在 calculateData() 中使用 console.log(max) 时,它会显示三个 JSON 对象的所有三个最大值。但是,当我在 renderData() 中返回 max 时,它只显示第一个值。为什么会这样?我该怎么做才能让它显示所有三个值而不是仅一个值?注意:data 是正在传递的对象的 json 列表。谢谢!

function calculateData(data) {

for (i in data) {

var arr = [];
var max;
var obj = data[i].tones;

obj.map(function(item) {
var data = item.score;
arr.push(data);
})

max = arr.reduce(function(a, b) {
return Math.max(a, b);
})

//Returns an array containing dominant [emotion_tone, language_tone, social_tone]
return renderData(max);
}

}

function renderData(max) {
console.log(max);
};

最佳答案

也许这就是你的意图?它将迭代整个数据对象,计算每次迭代的最大值,将它们收集在一个数组中,然后最终使用该数组调用 renderData 函数。

function calculateData(data) {
var maxes = [];
for (i in data) {

var arr = [];
var max;
var obj = data[i].tones;

obj.map(function(item) {
var data = item.score;
arr.push(data);
})

maxes.push(arr.reduce(function(a, b) {
return Math.max(a, b);
}));

}
return renderData(maxes);

}

function renderData(max) {
console.log(max);
};

关于javascript - 函数在传入另一个函数后 trim 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44033712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com