javascript方法重载简单介绍
分类:实例代码
本章节介绍一下js如何模拟实现函数重载效果。
在js中并没有重载这个概念,这一点并不像c#这样的语言,但是我们可以模拟实现。
关于重载这个概念,大家可以自行在网上查询。
代码实例如下:
function addMethod(object, name, fn){ var old = object[ name ]; object[ name ] = function(){ if (fn.length == arguments.length){ return fn.apply( this, arguments ); } else if ( typeof old == 'function' ){ return old.apply( this, arguments ); } } }; var UserInfo = function(){ addMethod(this,"find",function(){ console.log("没有参数"); }); addMethod(this,"find",function(name){ console.log("传入一个参数:"+name); }); addMethod(this,"find",function(name,value){ console.log("传入了两个参数,一个叫 name="+name+" 一个叫 value="+value); }); }; var userinfo = new UserInfo(); userinfo.find(); userinfo.find('前端教程网'); userinfo.find('antzone','pipipi.net');
一线大厂高级前端编写,前端初中阶面试题,帮助初学者应聘,需要联系微信:javadudu