• palordrolap@fedia.io
    link
    fedilink
    arrow-up
    19
    ·
    10 天前

    it commutes

    Maybe the behaviour with regard to type conversion, but not for the operation itself.

    “13”+12 and 12+“13” don’t yield the same result.

      • palordrolap@fedia.io
        link
        fedilink
        arrow-up
        4
        ·
        10 天前

        Given it’s JavaScript, which was expressly designed to carry on regardless, I could see an argument for it returning NaN, (or silently doing what Perl does, like I mention in a different comment) but then there’d have to be an entirely different way of concatenating strings.

        • ChickenLadyLovesLife@lemmy.world
          link
          fedilink
          English
          arrow-up
          6
          ·
          9 天前

          expressly designed to carry on regardless

          I’m surprised they didn’t borrow On Error Resume Next from Visual Basic. Which was wrongly considered to be the worst thing in Visual Basic - when the real worst thing was On Error Resume. On Error Resume Next at least moved on to the next line of code when an error occurred; On Error Resume just executed the error-generating line again … and again … and again … and again …

          • palordrolap@fedia.io
            link
            fedilink
            arrow-up
            2
            ·
            9 天前

            You’re right. I’ve got too much Perl on the brain and forgot my roots. There is a language that does what you’re talking about with the ‘+’ operator: BASIC

            Good luck getting the same thing retrofitted into JavaScript though. I can imagine a large number of websites would break or develop mysterious problems if this (mis)behaviour was fixed.

            • raspberriesareyummy@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              9 天前

              I don’t think there’s a way to retrofit JS - but php versions are deprecated all the time. Why not do the same with client-side script versions? :)