JavaScript——数据类型
概述
数据类型
- 数值(number):整数和小数
- 字符串(string):文本(比如Hello World)
- 布尔值(boolean):表示真和假(true和false)
- undefined:表示未定义或不存在
- null:表示空值,即此处的值为空
- 对象(object):各种值组成的集合
数值,字符串,布尔值这三种是原始数据类型的值
对象(object)是合成类型的值,一个对象往往是由多种原始数据类型组成
- ——又细分为:
- 狭义的对象(object);
- 数组(array);
- 函数(function)
undefined和null是两个特殊的值
-
确定一个值是什么类型
instanceof运算符和Object.prototype.toString方法,将在后文介绍。这里介绍typeof运算符。
typeof 123 // "number" typeof '123' // "string" typeof false // "boolean" typeof undefined // "undefined" function f() {} typeof f // "function" typeof window // "object" typeof {} // "object" typeof [] // "object" typeof null // "object"
- typeof运算符
- instanceof
- object.prototype.tostring
-
null和undefined
在if语句中null和undefined都表示为false
if (!undefined) { console.log('undefined is false'); } // undefined is false if (!null) { console.log('null is false'); } // null is false undefined == null // true
-
布尔值(boolean)
true表示真,false表示假,下列运算符会返回布尔值
除了以下六个值被转为false,其他值都是为true
- 两元逻辑运算符: && (And),|| (Or)
- 前置逻辑运算符: ! (Not)
- 相等运算符:===,!==,==,!=
- 比较运算符:>,>=,<,<=
- undefined
- null
- false
- 0
- NaN
- ""或''(空字符串)