NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
### call、bind、apply的区别 bind后函数不会执行,而只是返回了一个改变了上下文的函数副本 call和apply是直接执行函数的 apply后跟数组 ``` var name = "li"; var cheng = { name:"cheng" } var test = function(){ console.log(this.name) }.bind(cheng); test(); ``` ``` call(thisObj,params) //第一个参数指向函数内部的this,之后的参数是需要被传入函数的参数 ``` ``` function sayName(label) { console.log(label + ":" + this.name); } var name = "window"; var cheng = { name: "cheng" }; var jiang = { name: "jiang" }; sayName.call(this,"window"); sayName.call(cheng,"cheng"); sayName.call(cheng,"cheng"); ```