数据类型
js里面有七种数据类型:
- number,数字
- string,字符串
- boolean,布尔
- undefined
- null
- symbol(ES6新增)
- object,对象
基本数据类型(number、string、boolean、undefiend、null、symbol):
1. number
- 十进制
- 二进制
- 八进制
- 十六进制
2. string
- 空字符串:
""
、单行字符串 - 多行字符串
var s = '12345' + '67890' // 无回车符号 或 var s = `12345 67890` // 含回车符号复制代码
3.boolean
- 只有两个值:true和false
- a && b 在a和b都为true的时候,取值true,否则为false
- a || b 在a和b都为false的时候,取值false,否则为true
4.undefiend和null
- 都表示没有值。
- (规范)如果一个变量没有被赋值,那么这个变量的值就是 undefiend
- (习俗)如果你想表示一个还没赋值的对象,就用 null。如果你想表示一个还没赋值的字符串/数字/布尔/symbol,就用 undefined(但是实际上你直接 var xxx 一下就行了,不用写 var xxx = undefined)
5.symbol
复杂数据类型:object
1.object
- object 就是上面几种基本类型(无序地)组合在一起
- object 里面可以有 object
var person = { name: 'Frank', 'child': { name: 'Jack' }, // 最后这个逗号可有可无 }复制代码
- object 的 key 一律是字符串,不存在其他类型的 key
- key遵守标识符规则
- object[''] 是合法的
- 如果key符合标识符规则,那么object['key'] 可以写作 object.key
- 注意 object.key 与 object[key] 不同
- delete object['key']
- 'key' in object
typeof 操作符
xxx 的类型 | string | number | boolean | symbol | undefined | null | object | function |
---|---|---|---|---|---|---|---|---|
typeof xxx | "string" | 'number' | 'boolean' | 'symbol' | 'undefined' | 'object' | 'object' | 'function' |