JavaScript—不同环境下undefined的不同值
来源:互联网 发布:与淘宝合作的物流网站 编辑:程序博客网 时间:2024/06/05 03:58
用 var 或 let 声明的且未赋初值的变量,值会被设定为
undefined
。
试图访问一个未声明的变量或者访问一个使用 let
声明的但未初始化的变量会导致一个 ReferenceError
异常
被抛出:
var a;// a 的值是 undefinedconsole.log("The value of a is " + a);// Uncaught ReferenceError: b is not defined
console.log("The value of b is " + b);// c 的值是 undefined console.log("The value of c is " + c); var c;// Uncaught ReferenceError: x is not defined console.log("The value of x is " + x); let x;
你可以使用
undefined 来判断变量
是否已赋值。以下的代码中,变量input
未被赋值,因而if
条件语句的求值结果是true
。
var input;if(input === undefined){ doThis();} else { doThat();}
undefined
值在布尔类型环境中会被当作 false。例如,下面的代码将会执行函数
myFunction
,因为数组myArray
中的元素未被赋值:
var myArray = [];if (!myArray[0]) { myFunction(); }
数值类型环境中 undefined
值会被转换为 NaN。
var a;// 计算为 NaNa + 2;
当你对一个 null
变量求值时,空值 null
在数值类型环境中会被当作0来对待,而布尔类型环境中会被当作 false
。例如:
var n = null;typeof(n);// "object"// The Null type has exactly one value, called null.console.log(n * 32); // 0
0 0
- JavaScript—不同环境下undefined的不同值
- jQuery val() 在不同.NET 环境下显示不同值。
- 不同环境下的字节对齐使用
- 不同环境下换行符的区别
- 不同环境下的mvn运行指令
- PHP不同环境下的测试
- 不同系统环境下CMakeLists的配置
- 不同环境下python的安装
- 不同环境下python的编辑
- TensorFlow在不同环境下的切换
- IE和Firefox下javascript的不同
- JavaScript的不同弹话框
- mvn不同环境打不同的包
- Maven实现在不同的开发环境下打不同的包
- maven 的profile 、resource标签应用。不同的环境下编译导入不同配置文件
- 关于不同的环境下交叉编译的问题
- 在两个不同环境下的composer的安装
- 不同OS下调用参数的不同
- C++(笔记)课堂基础练习
- dma_map_ops 实现的三种方式
- windows下Git安装图文教程
- 我的公众号
- 怎么在MindManager中给文档加密
- JavaScript—不同环境下undefined的不同值
- 一看就懂的ReactJs入门教程(精华版)
- 链式栈
- css布局 待续
- TensorFlow的安装之路
- zifeng wu instance level segmentation:Bridging Category-level and Instance-level Semantic Image
- Centos6.5 mysql 5.7 主从复制 转自其他博主(http://www.linuxidc.com/Linux/2016-11/136899.htm)
- AVFilter
- First time to write blog on csdn