• this的指向的一些问题


    • apply方法:调用函数,同时指定函数中的this指向,参数以数组传递
    • call方法:调用函数,同时指定函数中的this指向,参数以列表传递
    • bind方法:得到一个新函数,该函数中的this始终指向指定的值,永久性绑定。
      (以上三种方法(任何方法)都改变不了箭头函数中的this指向)

    this无法赋值

    1. 在全局作用域中,this关键字固定指向全局对象。在浏览器中,window对象即是全局对象
    2. 在函数作用域中,取决于函数是如何被调用的
      1. 函数直接调用,this指向全局对象
      2. 通过一个对象的属性调用,格式为对象.属性()对象["属性"](),this指向对象

    1). 直接调用函数,this指向全局对象
    2). 在函数外,this指向全局对象
    3). 通过对象调用或new一个函数,this指向调用的对象或新对象

    箭头函数引入的其中一个原因,就是其不绑定this;在箭头函数中,箭头函数的this被设置为封闭的词法环境的,换句话说,箭头函数中的this取决于该函数被创建时的环境(上下文中的this)
    箭头函数没有自己的this值,箭头函数中所使用的this来自于函数作用域链。

  • 相关阅读:
    【leetcode】反转字符串
    【leetcode】反转字符串 II
    053-669
    053-668
    053-667
    053-666
    053-665
    053-664
    053-663
    053-662
  • 原文地址:https://www.cnblogs.com/panghu123/p/11768593.html
Copyright © 2020-2023  润新知