Open holyjak opened 7 years ago
Using Immutable 7.0.1, Babel, and Node 6, it seems that merge skips properties where the key is a Symbol, while set (correctly) sets them. It works with normal objects. Example:
merge
set
babel> const Immutable = require('seamless-immutable'); babel> const s = Symbol("sym mine"); babel> Immutable({}).merge({[s]: "sym val"})[s] undefined // WRONG: expected 'sym val' babel> Immutable({}).set(s, "sym val")[s] 'sym val' // CORRECT
However it works when the key is not a Symbol but a normal object:
> var Immutable = require('seamless-immutable'); > var s = {name: "key obj"}; > Immutable({}).merge({[s]: "sym val"})[s] 'sym val'
Using Immutable 7.0.1, Babel, and Node 6, it seems that
merge
skips properties where the key is a Symbol, whileset
(correctly) sets them. It works with normal objects. Example:However it works when the key is not a Symbol but a normal object: