• Traister101
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    11 hours ago

    You cannot have a string argument, arguments and variables in JS don’t have a type. All you have in JS is objects. Actual functions, like full on function foo(){} are still objects, like you can actually store data on the things.

    • Victor@lemmy.world
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      edit-2
      4 hours ago

      I think you confuse argument with parameter. You cannot specify the type of the parameter, but any argument you supply to a function in JS has a type. Every value in JS has a type, arguments included.

      If I go:

      const n = 0.0000005;
      console.log(typeof n);
      

      The code above will print “number”. And you cannot assign n.foo = "metadata"; to this value of a primitive type. Not everything is an object.

      Either way, arguments have types, values have types. The arguments in this case were of type “number”, when they should have been “string”.