zoukankan      html  css  js  c++  java
  • js bind 绑定this指向

    1、示例代码

    <!DOCTYPE html>
    <html lang="zh">
    
        <head>
            <meta charset="UTF-8" />
            <title>bind函数绑定this指向</title>
        </head>
    
        <body>
            <script type="text/javascript">
                window.color = "red";
                var o = {
                    color: "blue"
                };
    
                function sayColor() {
                    console.log(this.color);
                }
                sayColor(); //输出:red
                //绑定this指向            
                var objectSayColor = sayColor.bind(o); //this指向o
                objectSayColor(); //输出:blue
            </script>
        </body>
    
    </html>

    2、说明

    sayColor() 调用 bind() 并传入对象 o ,创建了 o bjectSayColor() 函数。 object-SayColor() 函数的 this 值等于 o ,因此即使是在全局作用域中调用这个函数,也会看到 "blue" 。

    3、与call、apply区别

    bind与apply、call最大的区别就是:bind不会立即调用,其他两个会立即调用

  • 相关阅读:
    文字
    <script type="text/x-template"> 模板
    防xss攻击
    url
    symmfony
    composer
    header 和http状态码
    bootstrap
    linux的设置ip连接crt,修改主机名,映射,建文件
    Centos上传下载小工具lrzsz
  • 原文地址:https://www.cnblogs.com/mengfangui/p/8295850.html
Copyright © 2011-2022 走看看