当前位置:网站首页>趣-关于undefined的问题
趣-关于undefined的问题
2022-07-06 09:53:00 【自由的音符】
对于
undefined
这个东西,平常开发中不少使用,但是我们真的搞懂了嘛?
今天,奇怪的知识点出现了
众所周知,undefined
是未定义,项目中常这样写:
//常用在初始化
let str = undefined
没什么问题!但是大厂中的大神(深井冰)会研究一些神奇的问题!制定一些规范,要想定义undefined就得这样写。
//大厂中是这样用
var str=void 0
这是结果
作用:这样是为了消除一些隐患
譬如:
//如果我们这么写就有问题
function log(){
var undefined=1//因为undefined不是一个关键字,可以这样定义
var a=undefined//再声明一个变量a,它的值是undefined
console.log(a)//打印什么呢???
}
这里的
undefined
用的不是全局变量里面的undefined
,而是这个声明的变量undefined
,所以这样一赋值就会出问题了,打印了1
。
总结:虽然这可能是js带设计之初,遗留的bug,但是我们业务上的东西还是要追求细致和严谨.
边栏推荐
- Easy introduction to SQL (1): addition, deletion, modification and simple query
- OliveTin能在网页上安全运行shell命令(上)
- EasyCVR接入设备开启音频后,视频无法正常播放是什么原因?
- Smart street lamp based on stm32+ Huawei cloud IOT design
- Spark accumulator and broadcast variables and beginners of sparksql
- How to output special symbols in shell
- Automatic operation and maintenance sharp weapon ansible Foundation
- [ASM] introduction and use of bytecode operation classwriter class
- Huawei certified cloud computing hica
- Xin'an Second Edition: Chapter 23 cloud computing security requirements analysis and security protection engineering learning notes
猜你喜欢
TCP connection is more than communicating with TCP protocol
scratch疫情隔离和核酸检测模拟 电子学会图形化编程scratch等级考试三级真题和答案解析2022年6月
分布式(一致性协议)之领导人选举( DotNext.Net.Cluster 实现Raft 选举 )
Spark calculation operator and some small details in liunx
It doesn't make sense without a distributed gateway
Getting started with pytest ----- test case pre post, firmware
学 SQL 必须了解的 10 个高级概念
Yarn: unable to load file d:\programfiles\nodejs\yarn PS1, because running scripts is prohibited on this system
面试突击63:MySQL 中如何去重?
2022年大厂Android面试题汇总(一)(含答案)
随机推荐
Kali2021 installation and basic configuration
Spark calculation operator and some small details in liunx
Distinguish between basic disk and dynamic disk RAID disk redundant array
Solr appears write Lock, solrexception: could not get leader props in the log
Kernel link script parsing
How to use scroll bars to dynamically adjust parameters in opencv
EasyCVR授权到期页面无法登录,该如何解决?
远程代码执行渗透测试——B模块测试
Sqoop I have everything you want
Example of batch update statement combining update and inner join in SQL Server
After entering Alibaba for the interview and returning with a salary of 35K, I summarized an interview question of Alibaba test engineer
李書福為何要親自掛帥造手機?
Pytest learning ----- pytest operation mode and pre post packaging of interface automation testing
OliveTin能在网页上安全运行shell命令(上)
Shell input a string of numbers to determine whether it is a mobile phone number
Guidelines for preparing for the 2022 soft exam information security engineer exam
Pytest learning ----- pytest confitest of interface automation test Py file details
RepPoints:可形变卷积的进阶
The shell generates JSON arrays and inserts them into the database
The art of Engineering (1): try to package things that do not need to be exposed