对象

对象的概念

  对象就是一组键值对(key-value)的集合,是一种无序的复合数据集合。

对象的本质

  • 键值对   属性名:属性值
  • 对象的所有健名都是字符串(ES6中又引入了Symbol可以作为键名)
  • 符合命名规范的健名可以不加引号,不符合命名规范的健名必须要加引号 , 否则会报错

对象的意义

  存储数据

对象的属性

  1. 如何理解:对象的属性也就是对象中的变量
  2. 读取属性
    var obj = {p:"hello"}
    ooj.p;                           //"hello"       使用点运算符           
    var obj = {p:"hello"}
    ooj["p"];                      //"hello"   使用方括号运算符

    注意:使用方括号时,健名必须放在引号里面,否则会当成变量处理健名都是字符串    

     注意:数字键不能使用点运算符 会报错使用方括号时,不需要加引号

   3.属性的赋值

      1.直接赋值

var obj = {};
obj.foo = 'Hello';
obj['bar'] = 'World';     //两种语法都可以赋值

      2.JavaScript 允许属性的“后绑定”,也就是说,你可以在任意时刻新增属性,没必要在定义对象的时候,就定义好属性。

       4.属性的查看

    Object.key(obj)方法

    功能:Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组

    参数:要返回属性的对象

    返回值:一个表示给定对象的所有可枚举属性的字符串数组;

    

var obj = {
  key1: 1,
  key2: 2
};
Object.keys(obj);   // ['key1', 'key2']

    5.属性的删除

      通过delete命令来删除对象的属性

      注意:只有一种情况,delete命令会返回false.那就是该属性存在,且不得删除.

var obj = Object.defineProperty({}, 'p', {
  value: 123,
  configurable: false
});
obj.p // 123
delete obj.p // false

对象的方法

  也就是对象中的函数

对象的引用

  不同变量名指向同一个对象,那么他们就是这个对象的引用

  简单地说就是  不同变量指向同一个内存地址

 对象的遍历

   使用for-in进行对象的遍历

  for...in语句以任意顺序遍历一个对象的除Symbol以外的可枚举属性

  遍历的结果是obj的健名

  

var obj = {a:1, b:2, c:3};
    
for (var i in obj) {
  console.log("obj." + i + " = " + obj[i]);
}

// Output:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"
原文地址:https://www.cnblogs.com/yad123/p/11448865.html