手写Bind
Function.prototype.bind2 = function(context){ var self = this; var args = [].slice.call(arguments,1); var returnfn = function(){ var args2 = [].slice.call(arguments); return self.apply(this instanceof returnfn ?this:context,args.concat(args2)); } function returnFather(){} returnFather.prototype = this.prototype; returnfn.prototype = new returnFather(); return returnfn; }
前端笔记0-0