4
关注
2121
浏览

的Javascript为什么我可以访问的功能

为什么被折叠? 0 个回复被折叠
elviswang 未验证用户 用户来自于: 广东省
2020-09-17 03:03
当你写d = 2那么你告诉JavaScript编译器将值2赋给变量d:
echowxsy 未验证用户 用户来自于: 广东省
2020-09-16 22:24

这个变量没有被宣布,它会自动像声明。函数测试将在其本地范围中查找是否定义了变量d,并且由于未在其中声明而会失败。所以如果测试函数声明了变量但是父范围还没有声明变量d,那么测试函数会询问它的父范围。然后,测试函数的父范围将询问全局范围是否已经声明了d并且全局范围发现没有任何变量d,因此它将创建一个名为d的变量并返回该变量。由于变量d由编译器全局声明,所以你可以在test2中访问它。

kisshc 未验证用户 用户来自于: 广东省
2020-09-16 04:23

你从来没有真正声明过这个变​​量,所以它不是一个局部变量。相反,这是一个隐含的全球化。

您应该始终使用'use strict';来发生该错误。

window.d = 2; 

关于作者

问题动态

发布时间
2020-09-15 15:51
更新时间
2022-09-15 15:53
关注人数
4 人关注

相关问题

无线振弦采集仪VS-BOX可以外接电池吗?内置和外部电池能同时使用吗?
云数据库MySQL可以带来什么服务?有可以免费试用的活动吗?
经济型三位显示模糊PID温控器,输入信号类型可以自行修改吗吗?
是否有RESTAPI就可以进行数据分析?
为什么企业数据库要配备风险评估系统?
有什么产品可以对数据库的漏洞进行扫描的?
求一个可以开发手机聊天软件可以和外国人聊天的
数组对象中的数组Javascript
为什么照片发不出去?
未经认证的用户也可以登录。
个人工作笔记 Powered BY WeCenter V4.1.0 © 2024 粤ICP备2020123311号