1. 概述

  1. 对象是一组“键值对”的集合,是一种无序的复合数据集合

    1.1 键名

  2. 对象的所以键名都是字符串

  3. 不是字符串的会自动转为字符串

    1.2 键值

  4. 键值可以是任意类型

    2. 属性的操作

    2.1 属性的查看

    Object.keys

    查看一个对象本身的所有属性

  5. 返回一个数组,包含对象自身的所有属性

    2.2 属性的删除

    delete

  6. delete命令用于删除对象属性,删除成功返回true

  7. 删除一个不存在的属性也会返回true
  8. 只有删除属性存在且不得删除的属性时,才会返回false
  9. 只能删除对象本身的属性,无法删除继承的属性

    2.3 属性是否存在

    in

  10. in 运算符用来检查对象是否包含某个属性

  11. 包含返回true,不包含返回false
  12. in操作符不能判断属性是对象自身的,还是继承的
  13. 可以使用hasOwnProperty方法判断属性是否是对象自身的,返回true为自身属性

    2.4 属性的遍历

    for…in 循环遍历

  14. 遍历对象所有可遍历(enumerable)的属性,会跳过不可遍历的属性

  15. 它不仅遍历对象自身的属性,还遍历继承的属性
  16. 一般情况下,我们只想遍历对象自身的属性,所以可以在for…in 循环中使用hasOwnProperty来判断下