call方法的应用示例

 <script>
        function a(time){
            //time次数
            console.log(this.uname,"杀了a",time,"次");
        }
        //创建函数
        var emp1={uname:"b"}
        //1.把函数赋值给对象,这个函数就是方法
        emp1.c=a
        //2.调用emp1的c,就是调用方法
        emp1.c(7);
        //3.删除emp1中存储的c
        delete emp1.c

        //第二种调用方法的方式是用call 语法:函数名.call(对象,参数)
        a.call(emp1,99);

        //计算n个月支付的薪资
        function pay(n){
            console.log(this.salary*n);
        }
        var emp2={ename:"d",salary:100}
        var emp3={ename:"k",salary:200}
        //计算emp2 10个月的薪资
        pay.call(emp2,10);
        //计算emp3 4个月的薪资
        pay.call(emp3,4);

        function show(){
            console.log(arguments);
        // arguments就是函数调用时,收到的所有实参,它是伪数组,长的像数组,但原型不是数组,所有没有数组的方法
        //怎么增加argument的长度:用数组原型里面存的push函数临时放到arguments中
        Array.prototype.push.call(arguments,5,6,7);
        }
        show(1,2,3,4);
    </script>

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值