>首页> IT >

快播:JavaScript怎么创建多个对象?详解四种方法

时间:2022-06-29 09:54:16       来源:转载
JavaScript怎么创建多个对象?javascript面向对象创建多个对象的方法,哪个最好用?字面量?工厂模式方法?构造函数方法?原型方法?原型加构造函数方法?进来一看便知。


【资料图】

在开发过程中我们经常会遇到需要创建很多个相似的对象,很可能有很多相同的属性或方法,那我们创建多个对象的方法都有哪些呢?最好的方法有又是哪个呢?一起来来看看吧!

1、创建多个对象——字面量方法

对象的字面量方方式是创建对象最常用的方式之一,以字面量方式创建的对象属性默认是可写的、可枚举、可配置。

如下代码展示了使用字面量方式创建多个对象:

// 字面量方式创建多个对象var person1 = {    name: "jam",    age: 18,    address: "上海市",    eating: function () {        console.log(this.name + "在吃饭")    }}var person2 = {    name: "tom",    age: 20,    address: "北京市",    eating: function () {        console.log(this.name + "在吃饭")    }}var person3 = {    name: "liming",    age: 19,    address: "天津市",    eating: function () {        console.log(this.name + "在吃饭")    }}

2、创建多个对象——工厂模式方法

工厂模式其实是一种常见的设计模式; 通常我们会有一个工厂方法,通过该工厂方法我们可以产生想要的对象;

如下代码展示了使用工厂模式方法创建多个对象的操作:

// 工厂函数方式创建多个对象function createPerson (name, age, address) {    var p = {}    p.name = name    p.age = age    p.address = address    p.eating = function () {        console.log(name + "在吃饭")    }    return p}var p1 = createPerson("jam", 19, "上海市")var p2 = createPerson("tom", 14, "北京市")var p3 = createPerson("li", 13, "天津市")p3.eating() // li在吃饭

3、创建多个对象——构造函数方法

构造函数相信大家并不陌生。所谓构造函数,就是提供一个生成对象的模板,并描述对象的基本结构的函数。一个构造函数,可以生成多个对象,每个对象都有相同的结构。

如下代码展示了使用构造函数方法创建多个对象:

// 约定俗成的规范,构造函数名字首字母大写function Person (name, age, address) {    this.name = name    this.age = age    this.address = address    this.eating = function () {        console.log(this.name + "在吃饭")    }    this.running = function () {        console.log(this.name + "在跑步")    }}var p1 = new Person("jam", 20, "北京市")var p2 = new Person("tom", 14, "上海市")var p3 = new Person("li", 13, "天津市")console.log(p1)// 输出结果//  Person {//     name: "jam",       //     age: 20,//     address: "北京市", //     eating: [Function],//     running: [Function]//   }p1.eating()  // jam在吃饭

4、创建多个对象——原型加构造函数方式

二者的组合模式即在构造函数上定义实例属性,那么在创建对象上只需要传入这些参数。在原型对象用于定义方法和共享属性。

如下代码展示了使用原型加构造函数方式创建多个对象:

function Person (name, age, address) {    this.name = name    this.age = age    this.address = address    this.eating =        this.running = function () {            console.log(this.name + "在跑步")        }}// 将eating方法和running方法加在原型上,就不需要每次创建一个对象都去在内存中加一遍一样的方法Person.prototype.eating = function () {    console.log(this.name + "在吃饭")}Person.prototype.running = function () {    console.log(this.name + "在跑步")}var p1 = new Person("jam", 20, "北京市")var p2 = new Person("tom", 14, "上海市")var p3 = new Person("li", 13, "天津市")console.log(p1)// 输出结果://  Person {//     name: "jam",       //     age: 20,//     address: "北京市", //     eating: [Function],//     running: [Function]//   }p1.eating()  // jam在吃饭

看完之后是不是感觉创建多个对象也没有那么复杂,利用原型加构造函数的方法分分钟创建好了。

【相关推荐:javascript视频教程、web前端】

以上就是JavaScript怎么创建多个对象?详解四种方法的详细内容,更多请关注php中文网其它相关文章!

关键词: 构造函数 工厂模式 创建对象