JS的数据类型
- 数字number
- 字符串string
- 布尔bool
- 符号symbpl
- null
- undefined
- object
- bigint
五个falsy
- undefined
- null
- 0
- NaN
- ``
声明对象的两种形式
let obj = {'name': 'leon', 'age': 18}
2. let obj = new Object({'name': 'leon', 'age': 18)
还可以用console.log({'name': 'leon', 'age': 18)来创建匿名对象
- key一般为字符串不是标识符
- key的引号可以省略,省略后就只能写标识符,也可以写数字,但key还是字符串
- key可为变量,表示为[a]
- Key不加引号会先进行科学运算,再转换成字符串
删除对象属性
方法有:
delete obj.xxxdelete obj['xxx']
- "属性值为undefined" 和 “不含属性名” 这两个概念
- 删除不存在属性系统不会报错
'xxx' in obj === false // 不含属性名
'xxx' in obj && obj.xxx === undefined // 含有属性名,但是属性值为 undefined
查看对象
object.keys(obj)//查看属性
object.values(obj)//查看值
object。entrues(obj)//查看每组键值对
console.dir(obj)//查看自身+共有属性
obj。hasOwnProperty('xxx')//判断属性是自身的还是共有的
- 'name' in obj 判断对象中是否存在该属性(包含共有属性)
- obj.hasOwnProperty('name') 判断属性是自身的还是共有的
修改增加对象
直接赋值,如:
let obj = {name:'xxxx'}obj.name = 'xxx'obj['na'+'me'] = 'xxx'
还可进行批量赋值
Object.assign(obj, {name: 'hh', age: 18})