简单理解创建对象的三种方式

导读:本篇文章讲解 简单理解创建对象的三种方式,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1、调用构造函数创建对象

var obj = new Object();
// 创建一个人的对象

var person = new Object();
person.name = "小甜";
person.age = 23;
person.eat = function () {

//在当前这个对象的方法中是可以访问当前这个对象的属性的值
console.log("我叫" + this.name + "," + "我爱吃火锅");
};

person.eat();

工厂模式创建对象

//工厂模式创建对象
function cObj(name,age) {

    var obj = new Object(); // 创建对象

    //添加属性
    obj.name = name;
    obj.age = age;

    //添加方法
    obj.eat = function () {
        console.log("我叫" + this.name + ",,," + this.age + "岁" + ",,," + "爱吃火锅");
    };
    return obj;
}

//创建人的对象
var luzp = cObj("小哥",27);
luzp.eat();

//创建一个人的对象
var lut = cObj("小甜",30);
lut.eat();

2、自定义构造函数创建对象

// Person () 其实就是一个函数
function Person(name,age) {
    this.name = name;
    this.age = age;
    this.eat = function () {
      console.log("我叫" + this.name + "和小哥认识的时候我" + this.age + "," + "我们都爱吃火锅");
    };
}

//创建对象
var lut = new Person("小甜",23);
console.log(lut.name);
lut.eat();

注意:自定义构造函数在创建对象的时候,产生以下四个事件

  • new 对象的时候,会在内存中申请一个空间,存储创建的新的对象
  • 把 this 设置为当前的对象
  • 设置对象的属性和方法的值
  • 把 this 这个对象返回

3、字面量的方式创建对象

var lut={

    name: "小甜",
    age: 23,
    place: "小寨",

    meet:function () {
        console.log(this.age + "岁的时候" + "和小哥" + "相遇与" + this.place);
    },

    eat:function () {
        console.log("都爱吃火锅");
    }
};

lut.meet();
lut.eat();

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/66438.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!