1.概述

1.undefined类型

undefined在声明变量但未对其加以初始化时,这个变量的值就是undefined。
字面量undefined的主要目的是用于比较。
包含undefined值的变量与尚未定义的变量还是不一样。例如:
var message; alert(message) //"undefined" alert(age) // 产生错误
运行以上代码,第一个警告框会显示undefined,第二个警告框会导致错误,是因为age并未声明,对于尚未声明的变量只能执行一项操作,那就是typeof()检测其数据类型。

2.null类型

null表示一个空对象指针。
如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为null。

3.null和undefined的区别

将一个变量赋值为undefined和null,语法效果几乎没有区别。
在if语句中,都会被自动转化为false,相等运算符(==)甚至直接报告两者相等
区别是:null是一个表示空的对象,转为数值时为0,undefined是一个表示此处无定义的原始值,转为数值时为NaN.

4.用法和含义

null表示空值,即该处的值现在为空,调用函数时,某个参数未设置任何值,这时就可以传入null,表示该参数为空。
undefined表示未定义,下面是返回undefined的典型场景:
`// 变量声明了,但没有赋值

var i;
i // undefined
// 调用函数时,应该提供的参数没有提供,该参数等于 undefined
function f(x) {return x;
}
f() // undefined// 对象没有赋值的属性
var  o = new Object();
o.p // undefined// 函数没有返回值时,默认返回 undefined
function f() {}
f() // undefined`

JavaScript(二)undefined类型、null类型相关推荐

  1. JavaScript数据类型 - Null类型

    Null类型 Null 类型是第二个只有一个值的数据类型,这个特殊的值就是null.从逻辑角度来看,null值表示一个空对象指针,而这也正是使用typeof检测null值时返回object的原因,如下 ...

  2. JavaScript:undefined And null差异

    班吃饭的时候,同事偶然问了一个问题:undefined和null究竟有什么差别?无法回答,回去查阅相关文档,算了有了一个了解,做相关的总结.在開始之前,请看例如以下代码,算是抛出这个问题: conso ...

  3. 理解Javascript_02_理解undefined和null

    来自普遍的回答: 其实在 ECMAScript 的原始类型中,是有Undefined 和 Null 类型的. 这两种类型都分别对应了属于自己的唯一专用值,即undefined 和 null. 值 un ...

  4. Javascript基础回顾 之(一) 类型

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  5. javascript基本数据类型与值类型引用类型说明

    DEMO: http://sources.ikeepstudying.com/jsdata/ 摘要:本文主要讲了javascript中的基本数据类型,以及值类型和引用类型的区别与使用 一.基本数据类型 ...

  6. JavaScript(四)—— JavaScript 内置对象/JavaScript 简单数据类型与复杂类型

    本篇为 JavaScript 系列笔记第三篇,将陆续更新 JavaScript(一)-- 初识JavaScript / 注释 / 输入输出语句 / 变量 / 数据类型 JavaScript(二)-- ...

  7. C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断...

    C#保留2位小数几种场景总结 场景1: C#保留2位小数,.ToString("f2")确实可以,但是如果这个数字本来就小数点后面三位比如1.253,那么转化之后就会变成1.25. ...

  8. JavaScript技术篇 - js的null值判断,js的undefined的判断,js的null与undefined的2种区分方法

    undefined 和 null 用 == 比较是相等的,我们可以有两种方法来进行区分. 区别方法一: 因为他们的类型时不同的,=== 会先比较类型,再比较值,所有可以直接用 === 来进行区分. n ...

  9. javascript中not defined、undefined、null以及NaN的区别

    [ 前言 ] 从踏入IT行业开始,我就发现技术人员写博客很有必要.如果不写博客,时间久了就像好比天天在外面建房子的人,没有一个自己的房子一样.不管学习紧不紧,工作忙不忙,多动手进行梳理总结,一方面是为 ...

最新文章

  1. python中导入包中的__init__文件夹的一个重要作用(去年对文件名的导入)
  2. 非计算机专业《Python程序设计基础》教学参考大纲
  3. 如何摆脱初学者的不自信,成为一名专业编程人士?
  4. 关于QQ的几点改进建议
  5. 9月22日云栖精选夜读:脑洞 | 横扫围棋界的AlphaGo竟然出纪录片了!介意剧透者慎点…...
  6. K8S专题-dashboardUI组件2
  7. 数论基本定理及应用(二)
  8. python输出字符串拼接数字_python实现字符串和数字拼接
  9. [转]简单批处理内部命令简介
  10. 11 EDA技术实用教程【时序电路的Verilog设计2】
  11. EASE-Grid投影
  12. c语言实验——G-鞍点计算
  13. 图解谷歌地球使用入门、谷歌地球COM API 开发入门、谷歌地球使用的初步协议分析
  14. SQL Server 2008数据备份与还原
  15. linux格式化硬盘怎么那么慢,linux系统中怎么格式化硬盘
  16. 升华网第三次培训心得
  17. 微博已成中国和世界真正的“连接器”
  18. 정부와동포 사고 전화해야
  19. 计算机表格怎么同时选中分开的两项,excel怎么把三个单元格分成两个
  20. Ngnix Rtmp详解

热门文章

  1. 【笔记】4. 离散傅里叶变换及其性质
  2. 企业级开源邮件系统搭建的全过程
  3. 新房自己装修好还是找公司好?
  4. tbc服务器维护时间,魔兽怀旧服:转服功能关闭,TBC前夕即将开放?这一时间相对靠谱...
  5. cfm本地包含漏洞利用
  6. linux安装界面超出显示范围,U盘安装CentOS显示“输入信号超出范围”解决
  7. TCP、HTTP详解
  8. Instr函数的用法
  9. A追B如何计算子弹的飞行轨迹
  10. 如何安装apk文件到android模拟器上面