es6 箭头函数 this 问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6 箭头函数 this 问题相关的知识,希望对你有一定的参考价值。

1. 在箭头函数出现之前,每个新定义的函数都有其自己的this值(例如,构造函数的 this 指向了一个新的对象;严格模式下的函数的 this 值为 undefined;如果函数是作为对象的方法被调用的,则其 this 指向了那个调用它的对象)。

2. 箭头函数没有自己的this,不会新产生自己作用域下的this,arguments,super和new.target等对象。此外,箭头函数总是匿名的。

<input type="button" class="btn1" value="提交1">
<input type="button" class="btn2" value="提交2">

<script>
    $(".btn1").click(function () {
        console.log(1);
        console.log(this);// <input type="button" class="btn1" value="提交1">
    })

    $(".btn2").click(() => {
        console.log(2);
        console.log(this);// window
    })

</script>

 

以上是关于es6 箭头函数 this 问题的主要内容,如果未能解决你的问题,请参考以下文章

ES6箭头函数中的this绑定问题

ES6 箭头函数

箭头函数和 this指向

es6 箭头函数 this 问题

es6的箭头函数和es5的function函数区别

ES6 类中的 ES6 函数、箭头函数和“this”[重复]