• Comment105@lemm.ee
      link
      fedilink
      arrow-up
      0
      arrow-down
      1
      ·
      1 year ago

      Java devs are prima mental gymnasticists, always able to make anything make sense.

      • Konlanx@feddit.de
        link
        fedilink
        arrow-up
        50
        ·
        edit-2
        1 year ago

        JS !== Java

        Try Javascript some day!

        • We have truthy and falsy! Empty string or null? Yeah, that’s false!
        • Of course we can parse a string to number, but if it’s not a number it’s NaN!
        • null >= 0 is true!
        • Assign a variable with =, test type equality with == and test actual equality with ===. You will NEVER use the wrong amount of = anywhere, trust me!
        • Our default sort converts everything to string, then sorts by UTF-16 code. So yes, [1, 10, 3] is sorted and you are going to live with it.
        • True + true = 2. You know I’m right.

        Try Javascript today!

        • Durotar@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Our default sort converts everything to string, then sorts by UTF-16 code. So yes, [1, 10, 3] is sorted and you are going to live with it.

          I’m not sure whether this is satire or not.

          • Konlanx@feddit.de
            link
            fedilink
            arrow-up
            48
            ·
            edit-2
            1 year ago

            It’s not. The default sorter does that, because that way it can sort pretty much anything without breaking at runtime. You can overwrite it easily, though. For the example above you could simply do it like this:

            [3, 1, 10].sort((a, b) => a - b)

            Returns: [1, 3, 10]

  • stevehobbes@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    1 year ago

    Jennifer is a lesbian. Her wife, now husband, who she’s proudly supportive of, is FtM, with 3 previous children that Jennifer adopted. Jennifer has never had penetrative sex with a man.

  • Coreidan@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    If you have that much difficulty with JavaScript then it’s likely you’ll suffer with any language.

    • MakeAvoy@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Except strict equality, that’s a JavaScript only problem. Imagine thinking "0" should be falsy in comparison due to string literal evaluation, but truthy with logical not applied based on non-empty string. Thus !"0"=="0" is true. They couldn’t just throw away == and start over nooooo let’s add === . Utter madness

      • soloner@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Browser compatibility. Design flaws can’t easily be fixed like how other languages can just switch to a new major version and introduce breaking changes. ES must keep backwards compatibility so has had to do more additive changes than replacing behavior altogether so that older web pages pages don’t break.