Для Map и Set два одинаковых по полям объекта — разные ключи: new Set([{x:1, y:4}, {x:1, y:4}]).size вернёт 2. Поэтому используют JSON.stringify, а он спотыкается о порядок полей, теряет undefined и падает на BigInt.
TC39 перевёл предложение Composites в Stage 2 на сентябрьском пленуме. Composite({x:1, y:4}) интернирует объект: одинаковые поля дают один и тот же ключ, обычные Set и Map его находят. Композит заморожен и без прототипа.
Дизайн ещё поменяется, в движках пока пусто.
TC39 перевёл предложение Composites в Stage 2 на сентябрьском пленуме. Composite({x:1, y:4}) интернирует объект: одинаковые поля дают один и тот же ключ, обычные Set и Map его находят. Композит заморожен и без прототипа.
Дизайн ещё поменяется, в движках пока пусто.
Просмотры: 7