其他分享
首页 > 其他分享> > call/apply 引用其他人的属性(改变this指向),传参列表不同

call/apply 引用其他人的属性(改变this指向),传参列表不同

作者:互联网

//call/apply(作用相同但写法不同) :引用其他人的属性(改变this指向),传参列表不同
			//一call  :把实参按照形参个数传进去
			
			// function Test(name,age) {
			// 	this.name = name;
			// 	this.age = age;
			// }
			// var test = new Test('魏',15);
			
			// var obj = {
				
			// }
			// Test.call(obj,'w',16)
			
			//二.多个函数组合到一起,一起执行(call)
			// function Test(name,age) {
			// 	this.name = name;
			// 	this.age = age;
			// }
			// function Test1(sex,bobby) {
			// 	this.sex = sex;
			// 	this.bobby = bobby;
			// }
			// function Car(name,age,sex,bobby) {
			// 	Test.call(this,name,age);
			// 	Test1.call(this,sex,bobby);
			// }
			// var car = new Car('w','16','男','JS');
			
			//一。使用apply  :需要传一个数组进去 arguments
			function Test(name,age) {
				this.name = name;
				this.age = age;
			}
			function Test1(sex,bobby) {
				this.sex = sex;
				this.bobby = bobby;
			}
			function Car(name,age,sex,bobby) {
				Test.apply(this,[name,age]);
				Test1.apply(this,[sex,bobby]);
			}
			var car = new Car('w','17','男','JS');
			

  

标签:传参,name,bobby,age,sex,call,Test,apply
来源: https://www.cnblogs.com/wsx123/p/16439463.html