gpt4 book ai didi

Javascript通过具有相同字段但在内存中不相同的键对象访问 map 的值

转载 作者:行者123 更新时间:2023-11-30 14:14:03 26 4
gpt4 key购买 nike

以下代码打印未定义,因为在内存中 a 和 b 不相同。

let map = new Map();

let obj1 = {value1: 1, value2: 2};
let obj2 = {value1: 1, value2: 2};

map.set(obj1, 'someValue');
console.log(map.get(obj2));

我正在寻找一种方法来访问存储“someValue”的值,键为对象 obj1,另一个键为 obj2,在字段方面是相等的。

最佳答案

我建议您从您的对象创建散列。如果您的属性顺序不同,则普通字符串化可能会失败。例如:

JSON.stringify({a: 1, b:2}) !== JSON.stringify({b: 2, a:1})

你可以使用像hashcode这样的模块或 object-hash创建散列,例如:

map.set(encode().value(obj1), 'someValue')

关于Javascript通过具有相同字段但在内存中不相同的键对象访问 map 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53899568/

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