千锋web前端开发项目教程_1000集完全零基础入门HTML5+CSS3+JS到

创建方式
+ 字面量:
=> 语法1:var 变量名 = { },该语法创建出来的是空对象
=> 语法2:var 变量名 = { key1: value, key2: value, key3: value, ......, keyn: value },该语法创建出来的对象带有某些数据
+ 内置构造函数:
=> 语法:var 变量名 = new Object( ),该语法创建出来的是空对象
+ 能不能用上面的方法创建带有数据的对象?暂时不能,后期再说
对象的基本操作
+ JS 对于对象的操作给了两种语法:点语法、数组关联语法
=> 区别:
+ ①操作的 key 是符合变量命名规则和规范名称:两种语法没有任何区别
+ ②操作的 key 是纯数字:只能用数组关联语法,因为当点后面是数字时,点会被解释为小数点,此时要求小数点前面也是数字,但是这里不是,所以会报错
+ ③操作的 key 是带有特殊符号的:只能用数组关联语法
+ ④涉及到变量相关内容时:只能使用数组关联语法
=> 例:var obj = { age: 18 }; var s = "age"; console.log(obj[s]) // 这里的 obj[s] 就是 obj["age"]
+ 基本操作:
=> 向对象内增加一个成员(增)
+ 点语法:对象名.成员名 = 值
+ 数组关联语法:对象名["成员名"] = 值
=> 删除对象内的某一个成员(删)
+ 点语法:delete 对象名.成员名
+ 数组关联语法:delete 对象名["成员名"]
=> 修改对象内的某一个成员(改)
+ 点语法:对象名.成员名 = 值
+ 数组关联语法:对象名["成员名"] = 值
=> 查询(访问)对象内的某一个成员(查)
+ 点语法:对象名.成员名
+ 数组关联语法:对象名["成员名"]
+ 注意:如果对象内没这个成员,那么值就是 undefined
+ 增加操作和修改操作语法相同的原因:因为对象内 key 不重名的特点,当你给一个已经存在的 key 赋值时,就是修改,反之就是增加