一.七大数据类型
数字(number)、字符串(string)、布尔值(boolean)、undefined、null、对象(Object)、符号(Symbols)(ECMAScript 第6版新定义)。
1.数字(number)
- JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。
- JavaScript 对整数提供四种进制的表示方法:十进制、十六进制、八进制、二进制。
- NaN是 JavaScript 的特殊值,表示“非数字”(Not a Number),主要出现在将字符串解析成数字出错的场合。
- 数值可以采用科学计数法表示
123e3 // 123000
123e-3 // 0.123
2.字符串(string)
- 字符串就是零个或多个排在一起的字符,放在单引号或双引号之中。
" 'Hello' " // 'Hello'
- 如果要在单引号字符串的内部,使用单引号,就必须在内部的单引号前面加上转义符反斜杠
\0 :null(\u0000)
\b :后退键(\u0008)
\f :换页符(\u000C)
\n :换行符(\u000A)
\r :回车键(\u000D)
\t :制表符(\u0009)
\v :垂直制表符(\u000B)
\' :单引号(\u0027)
\" :双引号(\u0022)
\\ :反斜杠(\u005C)
- length属性返回字符串的长度,该属性是无法改变的。
- JavaScript 引擎内部,所有字符都用 Unicode 表示。
- JavaScript 原生提供两个 Base64 相关的方法。
btoa():任意值转为 Base64 编码
atob():Base64 编码转为原来的值//不适合非 ASCII 码的字符,会报错。
3.布尔值(boolean)
- 布尔值代表“真”和“假”两个状态。
- 下列运算符会返回布尔值:
前置逻辑运算符: ! (Not)
相等运算符:===,!==,==,!=
比较运算符:>,>=,<,<=
4.undefined
- undefined是一个表示"此处无定义"的原始值,转为数值时为NaN。
5.null
- null是一个表示“空”的对象,转为数值时为0
6.对象(Object)
- 对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。
- 对象类型包括:数组(Array)、函数(Function)、还有两个特殊的对象:正则(RegExp)和日期(Date)。
7.符号(Symbols)
- 符号类型是唯一的并且是不可修改的, 并且也可以用来作为Object的key的值。此处不介绍
二.查看数据类型
- typeof 运算符,用于确定一个值的类型
typeof 123 // "number"
typeof '123' // "string"
typeof false // "boolean"
typeof null // "object"特殊错别情况