JS Undefined类型
undefined 是 Undefined 类型的唯一值,它表示未定义的值。当声明变量未赋值时,或者定义属性未设置值时,默认值都为 undefined。
示例1
undefined 派生自 null,null 和 undefined 都表示空缺的值,转化为布尔值时都是假值,可以相等。
console.log(null == undefined); //返回 true
null 和 undefined 属于两种不同类型,使用全等运算符(==)或 typeof 运算符可以进行检测。
console.log(null === undefined); //false
console.log(typeof null); //返回"object"
console.log(typeof undefined); //返回"undefined"
示例2
检测一个变量是否初始化,可以使用 undefined 快速检测。
var a; //声明变量
console.log(a); //返回变量默认值为 undefined
(a == undefined) && (a = 0); //检测变量是否初始化,否则为其赋值
console.log(a); //返回初始值 0
也可以使用 typeof 运算符检测变量的类型是否为 undefined。
(typeof a == "undefined") && (a = 0); //检测变量是否初始化,否则为其赋值
示例3
在下面代码中,声明了变量 a,但没有声明变量 b,然后使用 typeof 运算符检测它们的类型,返回的值都是字符串 “undefined”。说明不管是声明的变量,还是未声明的变量,都可以通过 typeof 运算符检测变量是否初始化。
var a;
console.log(typeof a); //返回"undefined”
console.log(typeof b); //返回"undefined"
对于未声明的变量 b 来说,如果直接在表达式中使用,会引发异常。
console.log(b == undefined); //提75未定义的错误信息
示例4
对于函数来说,如果没有明确的返回值,则默认返回值也为
function f(){}
console.log(f()); //返回"undefined"
undefined 隐含着意外的空值,而 null 隐含着意料之中的空值。因此,设置一个变量、参数为空值时,建议使用 null,而不是 undefined。
JS Undefined类型相关推荐
- 第一记: JS变量类型判断(VUE源码解读)
学习摘要 : 以前总是对js变量类型的判断模糊不清楚,今天看到vue源码后才恍然大悟原来大神都是这样弄的,所以加以总结,写的不好的请大神们多多吐槽吐槽!!!!!! Vue 源码 /* 获取值的原始类型 ...
- Flow - JS静态类型检查工具
本章的目标是提供一些Flow工具的介绍与使用建议.Flow本质上也只是个检查工具,它并不会自动修正代码中的错误,也不会强制说你没按照它的警告消息修正,就不会让你运行程序.当然,并没有要求什么时候一定要 ...
- 怎么去判断 js 的类型
在开发过程中,怎么去判断 js 的类型呢?又或者说你知道有哪些类型?今天来梳理一下js的类型,然后去判断这些类型属于什么!!! 1.首先用最基本的方法去判断js类型 2.使用 3.撒花,完结!!(如有 ...
- Null和Undefined类型
Null和Undefined类型都只有唯一的特殊值,即null和undefined.不过null是关键字而undefined不是. JavaScript把两者定义为相等的,如下代码可以验证: aler ...
- js布尔类型+数字判断_C ++中的布尔数据类型
js布尔类型+数字判断 In this article, we'll take a look at the Bool datatype in C++. 在本文中,我们将介绍C ++中的Bool数据类型 ...
- JS undefined报错
JS undefined报错 查看:onclick的调用者未找到 原因:调用该方法的变量的值为null,即节点未找到 解决:在引用此变量的前文对此变量进行定义并赋值,不可以在后面定义并赋值,js是从上 ...
- html 签到功能,从一个签到功能(日历)到 js Date 类型的全了解
最近工做工做遇到一个签到功能,网上找了不少日历插件,发现都不是很适合,或者说不能很好的实现产品的需求,结果仍是本身撸了一个,撸的过程也是对js Date 类型从新学习了一遍,对 Date 类型的方法也 ...
- js Date 类型 的取值、计算、格式化 与 moment.js
js Date 类型 的取值.计算.格式化 与 moment.js 前言 笔者工作多年,作为一个爱思考的程序员,一直在想一个问题:究竟怎样才可以让自己变的更强.. 对不起各位,说的太中二了,让我们重新 ...
- JavaScript(二)undefined类型、null类型
1.概述 1.undefined类型 undefined在声明变量但未对其加以初始化时,这个变量的值就是undefined. 字面量undefined的主要目的是用于比较. 包含undefined值的 ...
最新文章
- 看完 50000 张专辑封面,AI 设计师开始疯狂输出
- SaaS项目管理软件有什么用?
- 分布式服务框架 dubbo/dubbox 入门示例(转)
- 记录一次OOM分析过程
- 【教程】利用libsvm-mat建立分类模型model参数解密【by faruto】
- UA MATH523A 实分析3 积分理论例题 控制收敛定理计算一元积分的极限
- Qt学习笔记之常用控件QTreeWidget
- c语言编手机蓝牙软件的代码,51单片机C语言的简易蓝牙锁代码
- 5G通信的一些关键技术
- 【英语学习】【WOTD】imbroglio 释义/词源/示例
- 面试官问你如何解决web高并发这样回答就好了
- 命令行,使用java的java 命令,直接调用执行class文件
- 「leetcode」406.根据身高重建队列【贪心算法】详细图解
- 图计算:社区发现算法
- 数据挖掘(一)-探索性数据分析
- EasyConnect 安装使用教程 Windows
- 记一次连接数据库报错The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zo
- 关于IPHONE4跑流量问题解决方法:
- Altium Designer绘制stm32电路原理图
- Django学习 day74之BBS项目day3
热门文章
- 最新程序员冷段子,戳到你痛处了吗?
- 疯狂python讲义课后题答案_疯狂Python讲义
- 产业园以商招商实施方案
- 一加3T viper4android,哈曼卡顿Cortana智能音箱外观/内部规格全曝光
- 微软 Win11 22H2 (KB5017321) 更新失败并显示下载错误 0x800F0806,修复方法来了
- 【Springboot学习笔记】SpringBoot+Mybatis+Thymeleaf+Layui数据表单从零开始实现按条件模糊分页查询的方法
- 英文期刊名中常见的单词缩写 (个人整理不全面),后续还会整理。。。。
- 小波变换图像去噪matlab,基于小波变换的MATLAB汽车图像去噪
- 海康Ehome协议接入EasyCVR视频融合平台播放视频失败的排查与解决
- 单片机测量NTC热敏电阻温度的方法(含程序代码)