node_js 学习笔记 02(关于this传递)

var role = {};
function test_func(name,sex){
	this.name=name;
	this.sex=sex;
}

// 显式传递this
// 函数.call可以显式的传递一个实例,函数中的this就是指这个实例
// 在这里this--->role test_func.call(role,"leon","男"); console.log(role); // 隐式传递this var role1={ name:"leon", test_func:function(){ // 谁调用这个函数 this就指谁 console.log(this); }, }; role1.test_func(); // 强制传递this(强制传递的优先级高于隐式传递) var func=function(){ // this指bind的对象 console.log(this.sex); }.bind(role); func(); func=function(){ console.log(this); } // .bind()返回一个新的函数对象 func2 = func.bind(role.name); func(); func2.call(4); func2();

优先级:强制传递>显示传递>隐式传递

  

posted on 2019-04-21 13:04  A_free  阅读(82)  评论(0编辑  收藏  举报

导航