Ponder.cat
  • Communities
  • heart
  • search
    • Login
    • Sign Up
    • Communities

    • heart
      Support Lemmy
    • search
      Search

    • Login
    • Sign Up
    ☆ Yσɠƚԋσʂ ☆@lemmy.ml to Programmer Humor@lemmy.mlEnglish · 20 days ago

    JavaScript

    lemmy.ml

    message-square
    26
    fedilink
    • cross-posted to:
    • programmer_humor@programming.dev
    171

    JavaScript

    lemmy.ml

    ☆ Yσɠƚԋσʂ ☆@lemmy.ml to Programmer Humor@lemmy.mlEnglish · 20 days ago
    message-square
    26
    fedilink
    • cross-posted to:
    • programmer_humor@programming.dev
    • HiddenLayer555@lemmy.ml
      link
      fedilink
      English
      arrow-up
      21
      ·
      edit-2
      20 days ago
      ('b' + 'a' + + 'a' + 'a').toLowerCase()
      

      Returns “banana”

      • doubtingtammy@lemmy.ml
        link
        fedilink
        arrow-up
        8
        ·
        19 days ago

        wut

        • somedev@aussie.zone
          link
          fedilink
          arrow-up
          8
          arrow-down
          1
          ·
          19 days ago

          I’m guessing the + + in the middle returns NaN

          • Victoria@lemmy.blahaj.zone
            link
            fedilink
            English
            arrow-up
            4
            ·
            19 days ago

            Indeed, the unary plus operator tries to convert whatever is after it to a number if it isn’t already. Since ‘a’ is not a valid number, it returns NaN (not a number)

        • propter_hog [any, any]@hexbear.net
          link
          fedilink
          English
          arrow-up
          5
          arrow-down
          3
          ·
          edit-2
          19 days ago

          ‘a’ + +

          This part is the same as writing 'a'++ and that returns “NaN” (short for “not a number”) since you can’t increment a character, but this return type is a string, so the interpreter just concatenates it with the other letters: baNaNa. Then that string is converted to lower case to give the final result, “banana”.

          • sgh@lemmy.ml
            link
            fedilink
            arrow-up
            7
            ·
            19 days ago

            The space makes that two different tokens, in reality what happens is ‘a’ + (+‘a’) that resolves to ‘a’ + ‘NaN’.

            • propter_hog [any, any]@hexbear.net
              link
              fedilink
              English
              arrow-up
              2
              ·
              19 days ago

              Yep, I believe you’re right

          • Simon 𐕣he 🪨 Johnson@lemmy.ml
            link
            fedilink
            arrow-up
            3
            ·
            edit-2
            19 days ago

            Ironically 'a'++ works in C/C++ because 'a' is char where in JS ‘a’ is string.

    Programmer Humor@lemmy.ml

    programmerhumor@lemmy.ml

    Subscribe from Remote Instance

    Create a post
    You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: !programmerhumor@lemmy.ml

    Post funny things about programming here! (Or just rant about your favourite programming language.)

    Rules:

    • Posts must be relevant to programming, programmers, or computer science.
    • No NSFW content.
    • Jokes must be in good taste. No hate speech, bigotry, etc.
    Visibility: Public
    globe

    This community can be federated to other instances and be posted/commented in by their users.

    • 15 users / day
    • 1.23K users / week
    • 3.58K users / month
    • 7.59K users / 6 months
    • 1 local subscriber
    • 36.7K subscribers
    • 688 Posts
    • 2.9K Comments
    • Modlog
    • mods:
    • cat_programmer@lemmy.ml
    • UI: unknown version
    • BE: 0.19.8
    • Modlog
    • Instances
    • Docs
    • Code
    • join-lemmy.org