JavaScript supports rewriting of methods, but there is no method overloading mechanism, so can you mimic overloading mechanisms? The answer is yes.
(here to add the difference between rewriting and overloading, I was once confused.) Overrides are subclasses that override the parent class, the method name/parameter list/function return type must be the same, overloading is implemented in multiple methods in the same class, the method name must be the same, the argument list must be different, the return type can be different)
With the global variable arguments can be implemented,arguments is an array, by determining the length of the passed parameter can be accessed to the value of the parameter list.
To illustrate:
function Doadd () { if (arguments.length==1) { alert (arguments[0]+10); } else if (arguments.length==2) { alert (arguments[0]+arguments[1]); } } Doadd (10); Outputs "Doadd" (30,20);//outputs "50"
JavaScript implementation method overloading mechanism