you are viewing a single comment's thread
view the rest of the comments
[–] 14 points 1 year ago

Mh, '0' is a nonempty string, so !'0' returns false. Then of course !(!'0') would return true. I'd absolutely expect this, Python does the same.

And the second thing is just JavaScript's type coercion shenanigans. In Python

bool('0') # returns True because of nonempty string
bool(int('0')) # returns False because 0 == False

Knowing that JavaScript does a lot of implicit type conversions, stuff like that doesn't strike me as very surprising.

  • source
  • parent