前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS中call apply bind的用法

JS中call apply bind的用法

作者头像
贵哥的编程之路
发布2020-10-28 10:37:54
2.9K0
发布2020-10-28 10:37:54
举报
文章被收录于专栏:用户7873631的专栏
代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script>
        //this是什么?谁调用当前的属性或者方法的,它就是谁
        /* 2.1.bind方法作用
        修改函数或者方法中的this为指定的对象, 并且会返回一个修改之后的新函数给我们
        注意点: bind方法除了可以修改this以外, 还可以传递参数, 只不过参数必须写在this对象的后面
        */
        //call  apply  bind修改this的
        /*call:修改函数或者方法中的this为指定的对象, 并且会立即调用修改之后的函数
        注意点: call方法除了可以修改this以外, 还可以传递参数, 
        */
        /*apply:修改函数或者方法中的this为指定的对象, 并且会立即调用修改之后的函数
        注意点: apply方法除了可以修改this以外, 还可以传递参数, 只不过参数必须通过数组的方式传递
        立即执行是不返回的.
        */
       let obj={name:"cyg"};
       /* function test(a,b)
        {
            console.log(a,b);
            console.log(this);
        }
        test(10,20);
        window.test();
        let fn=test.bind(obj,10,20);
        fn();

        test.call(obj,10,20);
        test.apply(obj,[10,20]);
        */
         function Person() {
            this.name = "lnj";
            this.say = function () {
                console.log(this);
            }
        }
        let p= new Person();
        p.say();
        let fn=p.say.bind(obj);
        fn();
        p.say.call(obj);
        p.say.apply(obj);
    </script>
</body>
</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/08/16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档