1.应用场景
了解js对象的属性相关操作, 应用于开发中. |
2.学习/操作
1.介绍 js中有句名言: 一切皆对象 在编程语言里, 相同点, 对象是存储数据的容器, 而且都常是使用{}来表示, 但是声明对象的方式有很多种, 不同的语言也不尽相同. js中声明对象方式也有集中, 这里主要使用字面量声明 即{} var obj = {}; var test = {}; 备注: Javascript中对象属性可以加引号, 也可以不加引号, 但是某些不合法的属性名命名,就必要加引号。 更多介绍: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object //MDN - Object 提示: 对象的属性[属性+方法],可以认为根据对象属性的值是否为函数,又区分为属性[狭义]和方法 2.添加属性 对象{}支持使用 .或者 [] 来添加属性, 但是前者不支持属性名为变量[即 如果属性名为变量, 是不识别的, 直接当做字符串使用] 数组补充: code:
其实也可以使用Array 截图: 注意: 使用[]时, 要引号, 如果不加, 则认为是变量, 常量. 如果没有找到,则返回的结果为undefined 3.删除属性[即删除属性值] delete 对象.属性名 即可 如果删除不存在的属性,也会返回true 4.查询属性 / 通过属性获取属性值 判断属性是否存在, 直接使用.或者[] 即可, 存在, 返回属性值, 不存在, 返回undefined // 5.更新属性名 / 更新属性值 更新属性值: 对象.属性名 = 新值 // 对象['属性名'] = 新值 // 对象[属性名] = 新值 ==> 最后一项, 有时候也能正确执行, 但是有时会是错误的[即类型涉及到类型转换], 不推荐. 更新属性名: 直接更新: js不支持修改属性名 间接修改: 添加新的属性, 赋值[原属性的属性值], 删除旧的属性. 后续补充 ... |
3.问题/补充
1. 总说, null表示空对象, 但是如果动态添加属性, 会出现报错, 原因TBD, 如何解决?TBD 原因: 由于任意对象(除了 所以 |
4.参考
https://www.cnblogs.com/lakeslove/p/6377893.html //使用变量作为js对象的属性名 |
后续补充
...