• bitjunkie@lemmy.world
    link
    fedilink
    arrow-up
    4
    arrow-down
    2
    ·
    edit-2
    2 days ago

    It’s because + is two different operators and overloads based on the type to the left, while - is only a numeric operator and coerces left and right operands to numeric. But frankly if you’re still using + for math or string concatenation in 2025, you’re doing it wrong.

    • Hadriscus@lemm.ee
      link
      fedilink
      arrow-up
      8
      ·
      2 days ago

      I know nothing about javascript, what is wrong with using + for math? perhaps naively, I’d say it looks suited for the job

        • bitjunkie@lemmy.world
          link
          fedilink
          arrow-up
          1
          arrow-down
          1
          ·
          edit-2
          2 days ago

          Point taken but the one I use is only ~200k for the whole package, ~11k for the actual file that gets loaded

      • Quibblekrust@thelemmy.club
        link
        fedilink
        English
        arrow-up
        5
        ·
        2 days ago

        It’s much better to make your own function that uses bitwise operations to do addition.

        function add(a, b) {
            while (b !== 0) {
                // Calculate carry
                let carry = a & b;
        
                // Sum without carry
                a = a ^ b;
        
                // Shift carry to the left
                b = carry << 1;
            }
            return a;
        }
        

        (For certain definitions of better.)