> ([8, 32, 189].sort()[0]) === (new Boolean(false) ? 189 : 8)

Why such a contrived example?! This all boils down to

new Boolean(false) == false
returning true

new Boolean(false) === false
returning false

The ?: operator is just not performing an implicit cast. The fact that
the Boolean object is different from the Boolean primitive type  is...
...well unfortunate. That's why it's use is as an Object is deprecated
since JavaScript 1.3
You example gives the expected outcome if you call Boolean as a function:
([8, 32, 189].sort()[0]) === (Boolean(false) ? 189 : 8)

So, can we drop this dreaded debate now?

_______________________________________________
Wikitech-l mailing list
Wikitech-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l

Reply via email to