JS call 与 applay

JS call 与 applay

function CarStyle(color, width, height, len) {
	this.color = color;
	this.width = width;
	this.height = height;
	this.len = len;
}
function Car() {
	CarStyle.call(this, "red", 1200, 800, 1700);
}
function Cars() {
	CarStyle.apply(this,["red", 1200, 800, 1700]);
}

call:

  • 改变this的指向;
  • 参数:改变后的指向,构造函数的参数;
  • 如上述例子 Car 中:
    - 第一个参数为this 则CarStyle.call(this, “red”, 1200, 800, 1700);执行后CarStyle的this指向Car
  • 用途:当别的构造函数里的方法或属性是自己要写的方法或属性可以通过call方法获得;

apply:

  • 与call用途相同;
  • 区别:传参时第一位是改变后的this指向,第二位必须为装有参数的数组
发布了6 篇原创文章 · 获赞 4 · 访问量 179

猜你喜欢

转载自blog.csdn.net/weixin_44882846/article/details/103358361
今日推荐