首页 > 移动平台 > 详细

apply和call的区别在哪里

时间:2014-02-15 17:45:00      阅读:472      评论: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:这个是一个参数列表

call示例:

bubuko.com,布布扣
            /*定义一个人类*/
            function Person(name,age){
                this.name = name;
                this.age = age;
            }
            /*定义一个学生*/
            function Student(name,age,grade){
                Person.call(this,"张三",21,"一年级");
                this.grade = grade;
            }
            /*实例化一个学生*/
            var student = new Student("张三",21,"一年级");
            alert("name:"+student.name+"\n"+"age:"+student.age+"\n"+"grade:"+student.grade);
bubuko.com,布布扣

apply示例:

apply和call的区别在哪里

原文:http://www.cnblogs.com/fan-fan/p/3550606.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!