点击上方“IT那活儿”,关注后了解更多内容,不管IT什么活儿,干就完了!!!
箭头函数this
A. 箭头函数内部的this是词法作用域,有上下文确定。
B. 箭头函数this是在‘定义函数’的时候绑定,而不是在‘执行函数’的时候绑定。
*词法作用域就是,你在写代码的时候就已经决定了变量的作用域,因此当词法分析器处理代码时会保持作用域不变。
Javascript使用的是词法作用域。
它最重要的特征是,它的定义过程发生在代码的书写阶段。
函数的主要特性
A. 箭头函数没有自己的this对象。
B. 箭头函数的this永远指向其父作用域。
C. 任何方法都改变不了this,包括call,apply,bind。
代码示例,如图:
说明call无法改变this指向,全局this指向的是window对象,fn函数也是全局, fn函数this指向全局,也就是window对象,等同于window.obj指向了window.fn,而所有函数和对象都是window对象的属性,apply同理, 所以两次的值都为1,如图:
END
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/129538.html
摘要:对象的指向是可变的,但是在箭头函数中,它是固定的。同样的由于箭头函数没有自己的所以传统的显性绑定无效内部的指向外部在的学习中,的指向问题一直是个难点,特别是在对象方法中使用时,必须更加小心。由此箭头函数在很大程度上减少了我们的困扰。 什么是箭头函数 用法 ES6 允许使用箭头(=>)定义函数 测试 var p1 = document.getElementById(test1)...
摘要:注意因为箭头函数内部的是指向外层代码块的最近的,例中的函数的,所以我们可以通过改变外层代码块的的指向从而改变箭头函数中的指向例中使用了函数的方法。 一、this关键字小测试 ES6箭头函数体中的this指向哪里? 在回答这个问题之前先来揣揣你对this关键字的了解程度:(让我们回到ES6之前)题: var obj = { a: function() { cons...
摘要:有传闻说,箭头函数的语法,是受到了的影响,并且它与中的语法一样,共享上下文。箭头函数是新增加的一个特性。箭头函数没有自己的值,其值是通过继承其它传入对象而获得的通常来说是上一级外部函数的的指向。 箭头函数 1. 简单的定义: 胖箭头函数 Fat arrow functions,又称箭头函数,是一个来自ECMAScript 2015(又称ES6)的全新特性。有传闻说,箭头函数的语法=>,...
摘要:箭头函数基本语法函数语法具名函数匿名函数三句话第一句话声明第二句话声明匿名函数第三句话把匿名函数赋值给箭头函数语法特点只能做赋值,不能做声明第一种写法完全写法不省略参数个数,不省略函数体花括号参数个数函数体内语句个数第二种写法省略参数括号参 1.箭头函数基本语法 1.1 ES3 函数语法 // 具名函数 function xxx(arg1, arg2) { console.lo...
摘要:箭头函数简单的定义胖箭头函数,又称箭头函数,是一个来自又称的全新特性。箭头函数是新增加的一个特性。使用箭头函数的注意点箭头函数在参数和箭头之间不能换行。值得注意的一点就是对象的指向是可变的,但在箭头函数内是固定的。 箭头函数 1. 简单的定义: 胖箭头函数 Fat arrow functions,又称箭头函数,是一个来自ECMAScript 2015(又称ES6)的全新特性。有传闻说,...
阅读 1249·2023-01-11 13:20
阅读 1557·2023-01-11 13:20
阅读 1011·2023-01-11 13:20
阅读 1680·2023-01-11 13:20
阅读 3971·2023-01-11 13:20
阅读 2518·2023-01-11 13:20
阅读 1310·2023-01-11 13:20
阅读 3483·2023-01-11 13:20