gpt4 book ai didi

javascript - 无法从 Javascript 中的 map 迭代返回值

转载 作者:行者123 更新时间:2023-12-03 02:53:29 24 4
gpt4 key购买 nike

我在尝试使用 Javascript 返回 .map 中遇到的值时遇到问题。这是我的代码:

function LineaDeSuccion() {
const carga = vm.cargaTotal / vm.numeroEvaporadores;
vm.succion.map(i => {
if (i.temperatura == vm.tempSel) {
const cargas = Object.keys(i).map(function(key) {
return i[key];
});
// I need to return this value in my function
return getKeyByValue(i, closest(cargas, carga));
}
// Obviously I can't do it because the value it's encapsulated into the map callback.
// How can I solve it?
return value;
});
}

最佳答案

一种方法是使用Array.prototype.find在数组中查找所需的值,然后在获得它后执行所需的转换。

function LineaDeSuccion() {
const carga = vm.cargaTotal / vm.numeroEvaporadores;
const i = vm.succion.find(i => i.temperatura == vm.tempSel);

if (i === undefined) {
throw Error("can't find what I want in the array");
}

const cargas = Object.keys(i).map(function (key) {
return i[key];
});

return getKeyByValue(i, closest(cargas, carga));
}

请注意,此方法不会迭代整个数组,而是在找到匹配项后立即跳出 find 循环。如果数组中有多个元素i满足条件i.temperatura == vm.tempSel,则将返回第一个匹配项,而不是最后一个。

关于javascript - 无法从 Javascript 中的 map 迭代返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47734787/

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