• marcos@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    8 months ago
    (+x) % 2 == 0
    

    If you forget for a second it’s Javascript, the language will turn back and bite you.

      • mindbleach@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        JS is a language where [1,2,11].sort() returns [1,11,2].

        And if you use a variable instead of a bare array, half the functions are side-effectful, as determined by coin toss.

        And if you try declaring that variable with new Array(3).map() then it will ignore all 3 indices, because undefined is real enough to be enumerated, but not real enough to be iterated, because, and I cannot overstress the importance of this principle in Javascript, go fuck yourself. Go fuck yourself is why.

      • marcos@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        This evaluates to NaN for some reason:

        '10' % 0
        

        Since JS doesn’t really differentiate strings from numbers, except on the places it does, it makes sense to make sure you are working with numbers.