码迷,mamicode.com
首页 > 移动开发 > 详细

js apply

时间:2016-08-11 20:42:51      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:

apply:方法能劫持另外一个对象的方法,继承另外一个对象的属性。

Function.apply(obj,args)方法能接收两个参数:

obj:这个对象将代替Function类里的this对象;

args:这个是数组,它将作为参数传给Function(args-->arguments)

call和apply的意思一样,只不过是参数列表不一样。

Function.call(obj,[param1[,param2[,...[,paramN]]]]):

obj:这个对象将代替Function类里的this对象

params:这个是参数列表。

function Person(name,age) {
this.name = name;
this.age = age;
}
function Student(name,age,grade) {
Person.apply(this,arguments);
this.grade = grade;
}
var std = new Student("lai",28,"six");
alert("name"+std.name+"\n"+"age:"+std.age+"\n"+"grade:"+std.grade);

分析:Person.apply(this,arguments);

this:在创建对象的这个时候代表的是student;

通俗一点讲就是:用student去执行Person这个类里面的内容,在Person这个类里面存在this.name等之类的语句,这样就讲属性创建到了student对象里面。

js apply

标签:

原文地址:http://www.cnblogs.com/emmalai/p/5762350.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!