gpt4 book ai didi

javascript - findIndex javascript 问题

转载 作者:行者123 更新时间:2023-11-30 11:31:04 25 4
gpt4 key购买 nike

我试图在包含多个对象的数组中查找对象的索引。我已经为此苦苦挣扎了一段时间,并将其简化为您所看到的,但仍然无法理解。请让我知道什么会起作用,以便我可以从 matchBetween("string1");

获取“输入”对象的字符串
matchBetween("string1");
matchBetween = function (result) {
let params = [
{ param: "string1", input: "inputstring1"},
{ param: "string2", input: "inputstring2"}
];
console.log(result, params, params.param ); //Output: "string1", (2)[{...}, {...
let location = params.findIndex (x => Object.is(result, x));
console.log(location); //outputs -1
return params[location].input // 'Cannot read property 'input' of undefined'
};

我已经尝试了很多事情,但我觉得这是一个简单的修复,我只是想念它。提前致谢!

最佳答案

Object.is(result, x) 是错误的。

运行 params.findIndex (x => {console.log(x); return false;}); 看看每个 x 是什么样的

{param: "string1", input: "inputstring1"}
{param: "string2", input: "inputstring2"}

所以你可以像 Jean 提到的那样使用 Object.is(result, x.param),或者 result === x.param,或者简单地

params.find(x => x.param === result).input

注意,没有找到结果时需要处理。

关于javascript - findIndex javascript 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46210146/

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