Спецификация ECMAScript для «сравнения абстрактного равенства» (==
) изменилась между версиями 6.0 и 9.0, добавив символ !
перед вызовами ToNumber
в некоторых компонентах сравнения. Может кто-нибудь сказать мне, почему ECMAScript добавил это в спецификации? Это так запутанно.
Вот версия спецификации от 6.0:
И вот как спецификация изменилась в 9.0:
Что мотивировало это изменение? Что это значит?