问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

ES6中的箭头函数的父级作用域指的是什么?在对象中用箭头函数定义方法,this指向window?

发布网友 发布时间:2022-04-07 09:39

我来回答

2个回答

懂视网 时间:2022-04-07 14:01

全局作用域

变量在函数外定义,即为全局变量。
全局变量有全局作用域: 网页中所有脚本和函数均可使用。
如果变量在函数内没有声明(没有使用var关键字),该变量为全局变量。

// 以下实例中 carName 在函数内,但是为全局变量。
// 此处可调用 carName 变量
 
function myFunction() {
 carName = "Volvo";
 // 此处可调用 carName 变量
}
在函数内部或代码块中没有定义的变量上是作为 window/global 的属性存在,没有使用 var 定义的变量可以被 delete 的,而全局变量不可以。

函数作用域

函数内部声明的变量,称为函数作用域。函数内部的变量外部无法
直接访问,可以通过retun 或者闭包的方式去访问。

// 此处不能调用 carName 变量
function myFunction() {
 let carName = "Volvo";
 // 函数内可调用 carName 变量
}
<!--rerurn-->
function myFunction() {
 let carName = "Volvo";
 rerurn carName;
 // 函数内可调用 carName 变量
}
let fn=myFunction()//Volvo;

<!--闭包-->
function myFunction() {
 let carName = "Volvo";
 function getName(){
 console.log(carName)
 }
 return getName();
 // 函数内可调用 carName 变量
}
myFunction() //Volvo

块级作用域

es6出现后,用let命令新增了块级作用域,外层作用域无法获取到内层作用域,非常安全明了.即使外层和内层都使用相同变量名,也都互不干扰。

关于暂时性死区
* 在使用let命令声明变量之前,该变量都是不可用的。如果去调用这种情况被称为暂时性死区。
let 特性
* let不存在变量提升
* let不允许重复声明
* 拥有块级作用域
* 不可以使用window去调用
const 特性
* 定义常量
* 不允许修改常量的值
* 不允许先声明后赋值
* 同上
if(1){
 let a = 1
 console.log(a)
}

动态作用域

动态作用域不关心函数和作用域是如何声明以及在何处声明的,只关心它们从何处调用。和this的机制就很像;
其实这里就有延伸出js的词法作用域(静态作用域),而与词法作用域相对的是动态作用域,函数的作用域是在函数调用的时候才决定的

let name='youzi';
function getName(){
 let name="tuzi";
 function getAge(){
 console.log(name)
 }
 return getAge();
}
getName() //tuzi

词法作用域

JavaScript采用的是词法作用域,函数的作用域在函数定义的时候就决定了。

<!-- 这段代码执行就是按照词法作用域去执行的。在函数定义时已经被决定了 -->
let name='youzi';

function getName(){
 console.log(name)
}
function getAge(){
 let name='tuzi';
 getName()
}
getAge() //youzi

本文来自 js教程 栏目,欢迎学习!

热心网友 时间:2022-04-07 11:09

箭头函数有作用域(词法作用域),词法作用域简单来讲就是,一切变量(包括this)都根据作用域链来查找。箭头函数中的this因为绑定了词法作用域,所以始终指向自身...
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
英语第三人称单数一般现在时构成法 如“主+be+动词ing+其他”_百度知... 动词三单的构成规则是什么样的 ...被人发现了,然后我和爷爷分开跑了,我被一群人追? 26岁男,梦见我和爷爷一起去,去世的人家里找宝贝被人发现了,我和爷爷分... 男生乳晕太大怎么办,做手术么 男的乳晕大 男生乳晕有点大是什么原因 我是男生,乳晕有点大,并且成粉红色,怎么办? 为什么乳晕那么大 我是男的 您拨打的号码不存在是什么意思。 二十岁单纯善良的女生,看到那些残忍恐怖的电影,会是什么感觉? 哪些场所女生多? 求搓开美女衣服-妄撮小游戏? 搓开美女衣服-妄撮的介绍 酷狗音乐积分在电脑上面登同一个账号听歌会产生积分吗 多啦a梦动画爱的小屋 十篇不少于200字的不同书籍的读后感 郭德纲全部相声名称目录 贷款买房公转商,可以提前还一部分吗 摄像头的安装方法 摄像头安装方法 白薯怎么蒸 (2011?河南)在我省高速公路上安装有太阳能视频监控系统,如图所示.晴天,电池板将太阳能转化为电能, 如何蒸红薯,这样行么??急急急! 声卡怎么连接电视? 蒸红薯时,切记不要直接上锅蒸,该怎么弄? 苹果手机怎么才能不旋转 皮革上的502怎样才会消失? 华为C8650 安卓系统的紧急电话怎么设置?遇到紧急情况就只能打110、120、119么? 华为nova5pro没话费能不能报警? 宝怎么扫可以出万能福 支付宝扫什么得到万 支付宝扫福集福卡,你们都扫过哪些福? 手机可以下载什么软件能将电脑里的excel文件传到手机里啊? 电脑Excel表如何导入Excel APP如何使用(是微软不是WPS版本)谢谢啦!并说明在手机上如何保存 EXCEL 转 PDF 格式转换有什么手机 APP可以用? 手机可以下一个什么软件支持打开Excel文件,或者将其转换成可读的 怎么把excel电话导入手机 用什么软件 杭洲西湖占地面积? 杭州西湖占地面积640 HP281网络打印故障 hp1280打印机打印出现乱码 广汽本田缤智如何开热风? 请问我的打印机为什么装了驱动以后.全都是乱码.该怎么解决呢?打印机型号是:HP Laserjet 1 惠普激光打印机在打印 PDF 格式文件时个别字符出现乱码如何解决? HP打印机在局域网内不分机器打印出现乱码,不分电脑打印正常! hp打印机自己打印..时不时来几张,都是乱码 一页就10来个字符还是在页眉 惠普打印机第二份乱码 本田缤智不出暧风是什么原因? 支付宝面对面付款,对方已经收款,钱怎么收回 支付宝钱包不能使用面对面支付