对象

206 阅读1分钟

对象就是可以拥有属性和方法的一个集合

JavaScript 提供多个内建对象,比如 Object、String、Date、Array 等等,此外 JavaScript 允许自定义对象。

例一

var mrDeng = {
###// 属性://属性值
    name : "MrDeng",
    age : 40,
    sex : "male",
    health : 100,
### // 方法
    obj.say=function(){  //say方法
  //code
  } 
    smoke : function(){
        console.log("I am smoking!");
        mrDeng.health --;
    },
    drink : function (){
        console.log("I am drinking");
        mrDeng.health ++;
    }
}

对象例子2021-05-26 173501.jpg

mrDeng.wife = "xiaoliu";//可以加属性,也可以删除delete,也可以在控制台里面写 delete mrDeng.age

对象控制台加属性 2021-05-26 175254.jpg 例二

var deng = {
    prepareWife :"xiaowang",
    name : "laodeng",
    sex :"male",
    gf :"xiaoliu",
    wife :"",

    divorce : function(){
        delete this.wife;
        this.gf = this.prepareWife;
    },
    getMarried : function(){
        this.wife = this.gf;
    },
    changePrepareWife : function (someone) {
        this.prepareWife = someone;
    }
}

this是JavaScript语言的一个关键字。 它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。 随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。

例二1.jpg

例二2.jpg

对象的创建方法

1、通过new关键字创建对象 var obj = new Object();

2、通过字面量创建对象(例一) var obj = {} plainObject 对象字面量/对象直接量

3、构造函数创建对象

1)系统自带的构造函数 new Object()
var obj = new Object();
obj.name = 'abc';
obj.sex = 'male';
2)自定义

构造函数2).jpg

function person() {}
var person1 = new person();

**大驼峰命名规则 TheGirlIs--小驼峰命名规则 theGirlIs 例三

function Car(color) {
    this.color = color; //传参选颜色
    this.name = "BMW";
    this.height = "1400";
    this.lang = "4900";
    this.weight = 1000;
    this.health = 100;
    this.run = function(){
        this.health --;
    }
}
var car = new Car('red');
var car1 = new Car('green');
car.name = "Maserati";
car1.name = "Merz";
改变一个对象的值另外一个不变

car例子1.jpg

car2.jpg

例四

function Student(name,age,sex){
    1//var this = {
        2//name:''
          // age :
   // };AO{this:{name:'xiong'}}
    
    this.name = name;
    this.age = age;
    this.sex = sex;
    this.grade = 2017;
3 //return this;
}
var student = new Student('xiong',22,'female')
构造函数内部原理
1.在函数最前面隐式的加上 var this = {}
2.执行this...=...;
3.隐式的返回this