JS里面一共有七种数据类型:Number,String,Boolean,Symbol ,undefined, null ,object。
其中Symbol是es6新引入的基本数据类型,object是一种复杂类型。
Number
1.Number类型包含整数和浮点数(浮点数数值必须包含一个小数点,且小数点后面至少有一位数字)两种值。
2.Number可以使用科学计数法计数。
123e3 // 123000
123e-3 // 0.123
-3.1E+12
.1e-23
3.Number提供了几种进制。
- 十进制:没有前导0的数值。
- 八进制:有前缀0o或0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值。
- 十六进制:有前缀0x或0X的数值。
- 二进制:有前缀0b或0B的数值。
4.NaN
NaN是一种特殊的数字类型。特点:
① 涉及到的 任何关于NaN的操作,都会返回NaN。
② NaN不等于自身。
String
1.空字符串''
布尔值是false。与空格字符串' '
进行区分。
2.字符串不能只能回车分成多行
'a
b
c'
//报错
var JS = 'Java'
+ 'Script';
//成功
3.反斜杠(\)在字符串内有特殊含义,用来表示一些特殊字符,所以又称为转义符.
-
\0
:null -
\b
:后退键 -
\f
:换页符 -
\n
:换行符 -
\r
:回车键 -
\t
:制表符 -
\v
:垂直制表符 -
\'
:单引号 -
\"
:双引号 -
\\
:反斜杠
4.Base64转码
btoa()
:任意值转为 Base64 编码
atob()
:Base64 编码转为原来的值
Symbol
ES 6 引入了一个新的数据类型 Symbol
- symbol的用途就是:Symbol 可以创建一个独一无二的值(但并不是字符串)。
- symbol的作用:Symbol 生成一个全局唯一的值。
null,undefined
1.null和undefined非常相似。
2.null表示空值,即该处的值现在为空。
undefined表示“未定义”。
3.简单理解就是null表示空对象,undefined表示非空对象。
Boolean
1.值:true/false
2.&&
运算符,一假全假或者理解为左边为真时,直接返回右边布尔值。
||
运算符,一真全真或者理解为左边为假时,直接返回右边布尔值。
object
object是七种数据类型中的一个复杂类型。
对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合,可以将前面六种数据类型和object都作为value。
1.key只能是字符串。
2.object['key'] 可以写作 object.key
如果使用方括号运算符,键名必须放在引号里面,否则会被当作变量处理。
delete object['key']
'key' in object//undefined
for(var key in object)//false