test() ------- test.call() 一样
function Person(name ,age){
this.name = name;
this.age = age;//此时的this是window
}
var person = new Person(张三,18)//在此 this为person
常用于模块引用,即借用别人的函数完成自己的行为,前提是你的需求要完全涵盖别人已经做好的东西
如
function Person(name, age, sex){
this.name = name;
this.age = age;
this.sex = sex;
}
function Student(name,age,sex,tel,grade){
Person.call(this, name, age, sex);
this.tel = tel;
this.grade = grade;
}
call() 的目的是改变this的取向和传参
apply差不多但是传参方式不一样
apply传的是arguments数组,而且只能传一个
arguments伪数组
1.什么是伪数组
伪数组是一个含有length属性的对象,但不具有数组的方法,但仍可以用数组遍历的的方法去遍历他。