js手写bind
Function.prototype.myBind = function(context){
//保存一下this
let _this = this
//保存一下参数
let args1 = Array.from(arguments).slice(1)
function F(){
//保存一下参数
let args2 = Array.from(arguments)
//判断是否是构造函数
return _this.apply(this instanceof F ? this/*作为构造函数使用*/ : context,args1.concat(args2))
}
F.prototype = Object.create(this.prototype)
//把函数返回出去
return F
}