zoukankan      html  css  js  c++  java
  • JavaScript中的 bind-call-apply方法

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>bind-call-apply方法</title>
        <script>
            // bind方法
            // 将函数或者方法中的this修改为指定的对象, 会返回一个修改之后新的函数给我们
            // 该方法除了修改this之外, 还可以传递参数, 并且参数必须写在this的后面
            // call方法
            // 将函数或者方法中的this修改为指定的对象, 会立即调用修改之后的函数
            // 该方法除了修改this之外, 还可以传递参数, 并且参数必须写在this的后面
            // apply方法
            // 将函数或者方法中的this修改为指定的对象, 会立即调用修改之后的函数
            // 该方法除了修改this之外, 还可以传递参数, 并且参数必须以数组的形式写在this的后面
    
            let obj = {
                name: "zs"
            };
    
            /*
            // 修改函数中的this
    
            // function test(a, b) {
            //     console.log(a, b);
            //     console.log(this);
            // }
    
            // 通过bind修改
            // let fn = test.bind(obj, 1, 2);
            // fn();
    
            // 通过call修改
            // test.call(obj, 3, 4);
    
            //通过apply修改
            // test.apply(obj, [5, 6]);
            */
    
            // 修改方法中的this
    
            // function Person() {
            //     this.name = null;
            //     this.age = 10;
            //     this.fun = function () {
            //         console.log(this);
            //     };
            // }
            // let p = new Person();
    
            // 通过bind修改
            // let fn = p.fun.bind(obj);
            // fn();
    
            // 通过call修改
            // p.fun.call(obj);
    
            // 通过apply修改
            // p.fun.apply(obj);
        </script>
    </head>
    <body>
    
    </body>
    </html>
    
  • 相关阅读:
    ServletContext
    PS切图
    session实战案例
    Array Destruction
    Session详解
    No More Inversions 全网最详细 回文序列的逆序对
    Sum of Paths (DP、预处理)
    cookie详解
    web的状态管理
    简单最大流/最小割复习
  • 原文地址:https://www.cnblogs.com/TomHe789/p/12716215.html
Copyright © 2011-2022 走看看