Immutable.js undefined 和 false 具有相同的 hashCode()

Immutable.js undefined and false have the same hashCode()

我正在使用 Immutable.js fromJS 来比较两个简单的 JavaScript 对象:

const a = fromJS({value: false}).hashCode();
const b = fromJS({value: undefined}).hashCode();

console.log(a, b);
  1. 为什么这些 JavaScript 个对象具有相同的哈希码?

10995925 10995925

  1. 确保 undefinedfalse 的哈希码不同的最简洁方法是什么?

已将此报告为错误:https://github.com/facebook/immutable-js/issues/1547

...随后在同一存储库中被 differentiate falsy values when hashing (#1547) 引用。

...看起来修复尚未落地,但很快。