• 0 Posts
  • 3 Comments
Joined 2 years ago
cake
Cake day: July 3rd, 2023

help-circle


  • 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.