javascript对象的学习

一、对象的定义:

  对象是JavaScript的一个基本数据类型,是一种复合值,它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值。即属性的无序集合。

  JavaScript 提供多个内建对象,比如 String、Date、Array 等等。

  对象只是带有属性和方法的特殊数据类型。

 访问对象的属性

  属性是与对象相关的值。

  访问对象属性的语法是:

  objectName.propertyName

  这个例子使用了 String 对象的 length 属性来获得字符串的长度:

  var message="Hello World!";
  var x=message.length;

  在以上代码执行后,x 的值将是:

  12

二、对象的创建(多种方法)

  1、对象直接量 / 字面量 

       var obj = {
           name: 'lyl',
           age: 18
       }
       console.log(obj.name); // lyl

2、构造函数:

    (1)、系统自带的的, eg: new Object(), Array(), Number(),Boolean(), Date()...

    

 var obj = new Object();
      obj.name = 'lyl';
      console.log(obj.name); //lyl

     (2)、自定义的:为了和普通函数区分,首字母大写,采用大驼峰式写法(普通函数采用小驼峰式写法)

复制代码
复制代码
       function Obj (name) {
          this.name = name;
          this.age = 18;
      }
      var obj = new Obj('lyl');
      console.log(obj.name); //lyl
      console.log(obj.age); //18
复制代码
复制代码
 
 

三、对象的增、删、改、查

  1、增: 所谓增添一个对象的属性,就是直接对该属性进行赋值操作即可,这就相当于为该对象添加了一个新属性,而打印未添加的属性,浏览器不会报错,而是会打印出undefined

  

 var obj = {};
    console.log(obj.name); //undefined (不会报错)
    obj.name = 'lyl';
    console.log(obj.name); // lyl

  

  2、删:我们通过delete操作符来删除一个对象的属性

  

复制代码
 var obj = {
       name : 'lyl'
     };
     console.log(obj.name); //lyl
     delete obj.name; 
     console.log(obj.name); //undefined
复制代码

  3、改: 修改一个对象的属性是最简单的了,直接通过赋值操作赋予其其他的值即可

  

复制代码
var obj = {
      name: 'lyl'
    };
    console.log(obj.name); // lyl
    obj.name = 'obj';
    console.log(obj.name); // obj
复制代码

  

  4、查:查询一个对象的属性值有两种方法

  

复制代码
复制代码
var obj = {
      name: 'lyl'
    };
    // 第一种方法
   console.log(obj['name']); //lyl
  //  第二种方法
    console.log(obj.name); // lyl
  //p.s.最本质的是第一种方法,因为在使用第二种方法时,后台自动将其转换为第一种字符串的形式来查询 
复制代码
复制代码

    

p.s.以上的增、删、改三种操作都只是针对当前对象的属性进行操作,而不会影响到当前对象的原型的属性。

  而查询是先看看当前对象本身是否设置了该属性,如果当前对象未设置该属性,则再看该对象的原型中是否设置了该属性,若两者都没有,则返回undefined

后续会补充...

原文地址:https://www.cnblogs.com/xumBlog/p/8542304.html