>> One reason it might make sense to throw, is people converting values to
>> string names for use as object properties. Reason you'd want to throw would
>> be to prevent accidentally making the key useless (different from its
>> original Symbol value).
>
> This is exactly the reason.
>
> Of course, having String(x) and '' + x diverge is funky, but not novel:
>
> js> o = {valueOf(){return 42}, toString(){return 'haha'}}
> ({valueOf:function valueOf(){return 42}, toString:function toString(){return
> 'haha'}})
> js> String(o)
> "haha"
> js> ''+o
> "42"
Playing devil’s advocate: How realistic a danger is this? Do people ever
compose a property key for an object out of several pieces?
It does add a fair amount of complexity for something that doesn’t seem that
common.
--
Dr. Axel Rauschmayer
[email protected]
rauschma.de
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss