js-对象(简述)

        (1)  什么是对象

              现实生活中:万物皆对象,对象是一个具体的事物,一个具体的事物就会有行为和特征。

  1. JavaScript中的对象其实就是生活中对象的一个抽象,
  1. 其属性可以包含基本值、对象或函数。
    对象就是一组没有顺序的值。我们可以把JavaScript中的对象想象成键值对,其中值可以是数据和函数。

       (2)  本质: 键值对;  

          (3)  意义:存储数据和编程;

          (4)  创建方式:

        1.  通过new关键字创建对象:

                                 

  1. var obj = new Object();
  2. // 添加属性
  3. obj.name = "admin";
  4. // 添加方法
  5. obj.show = function () {
  6. console.log( "我是"+this.name );
  7. };

                        2.  通过字面量创建对象

   

  1. var obj = {
  2. name : "zhangsan",
  3. age : "18",
  4. show : function () {
  5. console.log(''我是''+this.name+"年龄"+this.age);
  6. }
  7. };

                        3.  通过构造函数创建对象

  1. function Person(name, age) {
  2. this.name = name;
  3. this.age = age;
  4. this.say = function(name) {
  5. console.log("你好: " + name + "!");
  6. };
  7. }
  8.  
  9. // 创建两个Person对象
  10. var person1 = Person("admin1", 18);
  11. var person2 = Person("admin2", 28);

      (5) 属性和方法

                 如果一个变量属于一个对象所有,那么该变量就可以称之为该对象的一个属性,属性一般是名词,用来描述事物的特征

                 如果一个函数属于一个对象所有,那么该函数就可以称之为该对象的一个方法,方法是动词,描述事物的行为和功能

            (6) 访问对象的属性和方法

                  1.点语法:

                          形为: 对象.具体属性或方法;

                   2.中括号语法:

                          形为:  对象[变量]  或   对象[“具体属性或方法”];

                  区别:中括号法可以用变量作为属性名,而点语法不可以;
        中括号法可以用数字作为属性名,而点语法不可以。

  1. var obj = {
  2. name : "xiaoming",
  3. age : 18,
  4. 123:123,
  5. show : function () {
  6. console.log("我是"+this.name+"年龄"+this.age);
  7. }
  8. };
  9. console.log(obj["name"]); // 输出:"xiaoming"
  10. console.log(obj.name); // 输出:"xiaoming"
  11. var age = "age";
  12. console.log(obj[age]); // 输出:18
  13. console.log(obj["123"]); // 输出:123

          (7) 对象的遍历

  1. var obj = {
  2. name : "xiaoming",
  3. age : 18,
  4. 123:123,
  5. show : function () {
  6. console.log("我是"+this.name+"年龄"+this.age);
  7. }
  8. };
  9. for(var i in obj){
  10. console.log(i)//输出的是key;
  11. }

       (8)删除对象的属性(最好不用):

                     delete  对象.属性/方法

              

 

  

 

版权声明:本文为xy88原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xy88/p/12043797.html