关于undefined的含义
undefined是一种类型,javascript常用的类型有:Undefined,Null,Boolean,Number,String。如果一个变量没定义或者定义后没初始化,typeof就会返回"undefined“(注意:有引号的)
参考下面的代码:
<script language="javascript">
document.write(typeof undefined+"<br>");
var a;
document.write(typeof a+"<br>");
document.write(typeof variable+"<br>");
if(typeof(variable) =="undefined"){
document.write( "variable is undefined <br>");
}
</script>
此处,我们看到,两个结果都为undefined,即使第undefinedValue2没有被声明,依然可以得到输出.
下面简单介绍typeof
typeof运算符
对变量或值使用typeof运算符将会返回下列值之一:
"undefined" 如果变量是Undefined类型的 "boolean" 如果变量是Boolean类型的 "number" 如果变量是Number类型的 "string" 如果变量是String类型的 "object" 如果变量是一种引用类型或者Null类型的
"function" 如果变量是一种function类型的 注意:
1.返回值为字符串类型.
2.和原始类型比,还差了个null,这个比较特殊,使用typeof(null),返回的是"object",我们将null理解成是object的占位符.
3.对未声明的变量使用其他操作符,都会引起错误,因为其他运算符只能运行于已声明的变量上.
4.如果函数没有明确的返回值,则函数的返回值也是undefined
5.值undefined并不等同于未定义的值.但typeof运算符并不能真正区分这两种值.undefined: 代表一切未知的事物,啥都没有,无法想象,代码也就更无法去处理了。
注意:typeof(undefined) 返回也是 undefined。 可以将undefined赋值给任何变量或属性,但并不意味了清除了该变量,反而会因此多了一个属性。null: 有那么一个概念,但没有东西。无中似有,有中还无。虽难以想象,但已经可以用代码来处理了。
注意:typeof(null)返回object,但null并非object,具有null值的变量也并非object。boolean: 是就是,非就非,没有疑义。对就对,错就错,绝对明确。既能被代码处理,也可以控制代码的流程。
number: 线性的事物,大小和次序分明,多而不乱。便于代码进行批量处理,也控制代码的迭代和循环等。
注意:typeof(NaN)和typeof(Infinity)都返回number 。 NaN参与任何数值计算的结构都是NaN,而且 NaN != NaN 。
Infinity / Infinity = NaN 。
关于undefined的含义相关推荐
- Javascript中undefined和not defined有什么区别?
概念上的解释: undefined是javascript语言中定义的五个原始类中的一个,换句话说,undefined并不是程序报错,而是程序允许的一个值. not defined是javascript ...
- 计算机语言学习导论[C/C++]
作者:@幻の上帝 1 前置条件 语文其实挺重要,这个没问题,但容易被忽视.当然,如果不是经常要折腾文档,要求不高:但起码要能说清楚话. 数学重要,主要是广度,作为快速学习相关领域知识的基础.深度上面可 ...
- TS笔记--------Jonathan
Typescript 1.什么是 Typescript(TS) Typescript 简称 TS TS 和 JS 之间的关系类似 Less/Sass 和 CSS 之间的关系,就像 Less/Sass ...
- Flink-作业提交流程
Flink-作业提交流程 快速索引 StreamGraph JobGraph ExecutionGraph RuntimeGraph 1 背景 1.1 概述 Flink DataStream一个作业提 ...
- Flink学习1-基础概念
Flink学习1-基础概念 Flink系列文章 更多Flink系列文章请点击Flink系列文章 更多大数据文章请点击大数据好文推荐 摘要 本文是作者学习Flink的一些文档整理.记录和心得体会,希望与 ...
- 解剖JavaScript中的null和undefined
在JavaScript开发中,被人问到:null与undefined到底有啥区别? 一时间不好回答,特别是undefined,因为这涉及到undefined的实现原理.于是,细想之后,写下本文,请各位 ...
- [二]Java虚拟机 jvm内存结构 运行时数据内存 class文件与jvm内存结构的映射 jvm数据类型 虚拟机栈 方法区 堆 含义...
前言简介 class文件是源代码经过编译后的一种平台中立的格式 里面包含了虚拟机运行所需要的所有信息,相当于 JVM的机器语言 JVM全称是Java Virtual Machine ,既然是虚拟机, ...
- ajaxfileupload返回结果undefined_Null amp; Undefined 简易对比
场景导入 在 JS 中,表示空有两种类型,一种是null, 而另一种是undefined.但其实,这两种"空"有不同含义,我们在面试中也经常会被问到.今天我们就来整理一下null和 ...
- JavaScript中七种函数调用方式及对应 this 的含义
http://blog.sina.com.cn/s/blog_621f1e120100rj21.html this 在 JavaScript 开发中占有相当重要的地位,不过很多人对this这个东西都感 ...
最新文章
- mysql 树表删除无效节点
- Ubuntu14.04安装pip及配置
- luogu P1774 最接近神的人_NOI导刊2010提高(02)
- RUNOOB python练习题17
- oracle行转列 case,Oracle 行转列总结 Case When,Decode,PIVOT 三种方式
- OpenGL ES 简单教程
- Android开发技术周报 Issue#101
- CentOS7忘记root密码的解决方法
- 老罗锤子手机公布会,我感到深深地愧疚
- qpython3安装kivy_kivy学习之路:kivy开发环境架设--- windows篇
- LONG RAW转换BLOB
- 设计模式七大原则——单一职责原则
- Python基础语句(一)
- SAP Data Service操作简介
- 基于MUI的电影新闻的webapp项目开发
- MyBatis初学总结(五)
- Springboot + rxtx 实现串口读写 案例
- 2021CSP-J3
- 实验7-1-9 数字加密 (15 分)
- 不用root卸载手机系统软件
热门文章
- 数字资产的价值激发:NFT 质押
- prime95 for linux
- 如何修改CAD图中的一些块颜色?
- 小冰发布全球首款人工智能「Office」,沈向洋:我们不走寻常路
- 解决netgear路由器总掉线的问题
- html外边距图,css margin外边距详细图解分析
- 北森秋招(代做与题库都可)
- 如何解决深度VISTA GV2.0子网掩码多了一个141.41.94.121的问题!
- Not all slots covered! Only 10922 slots are available
- 笔记本简易拆机清灰尘教程