`
3806850
  • 浏览: 93553 次
  • 性别: Icon_minigender_2
  • 来自: 沈阳
社区版块
存档分类
最新评论

js创建对象的几种常用方式小结(转载)

    博客分类:
  • JS
阅读更多
第一种模式:工厂方式
var lev=function(){ 
return "脚本之家"; 
}; 
function Parent(){ 
var Child = new Object(); 
Child.name="脚本"; 
Child.age="4"; 
Child.lev=lev; 
return Child; 
}; 
var x = Parent(); 
alert(x.name); 
alert(x.lev()); 


说明:
1.在函数中定义对象,并定义对象的各种属性,,虽然属性可以为方法,但是建议将属性为方法的属性定义到函数之外,这样可以避免重复创建该方法
2.引用该对象的时候,这里使用的是 var x = Parent()而不是 var x = new Parent();因为后者会可能出现很多问题(前者也成为工厂经典方式,后者称之为混合工厂方式),不推荐使用new的方式使用该对象
3.在函数的最后返回该对象
4.不推荐使用这种方式创建对象,但应该了解

第二种模式:构造函数方式
var lev=function(){ 
return "脚本之家"; 
}; 
function Parent(){ 
this.name="脚本"; 
this.age="30"; 
this.lev=lev; 
}; 
var x =new Parent(); 
alert(x.name); 
alert(x.lev()); 


说明:
1.与工厂方式相比,使用构造函数方式创建对象,无需再函数内部重建创建对象,而使用this指代,并而函数无需明确return
2.同工厂模式一样,虽然属性的值可以为方法,扔建议将该方法定义在函数之外
3..同样的,不推荐使用这种方式创建对象,但仍需要了解

第三种模式:原型模式

var lev=function(){ 
return "脚本之家"; 
}; 
function Parent(){ 

}; 
Parent.prototype.name="李小龙"; 
Parent.prototype.age="30"; 
Parent.prototype.lev=lev; 
var x =new Parent(); 
alert(x.name); 
alert(x.lev()); 



说明:
1.函数中不对属性进行定义
2.利用prototype属性对属性进行定义
3.同样的,不推荐使用这样方式创建对象

第四种模式:混合的构造函数,原型方式(推荐)
function Parent(){ 
this.name="脚本"; 
this.age=4; 
}; 
Parent.prototype.lev=function(){ 
return this.name; 
};; 
var x =new Parent(); 
alert(x.lev()); 


说明:1.该模式是指混合搭配使用构造函数方式和原型方式
2.将所有属性不是方法的属性定义在函数中(构造函数方式)
将所有属性值为方法的属性利用prototype在函数之外定义(原型方式)
3.推荐使用这样方式创建对象,这样做有好处和为什么不单独使用构造函数方式和原型方式,由于篇幅问题这里不予讨论

第五种模式:动态原型方式
function Parent(){ 
this.name="脚本"; 
this.age=4; 

if(typeof Parent._lev=="undefined"){ 

Parent.prototype.lev=function(){ 
return this.name; 
} 
Parent._lev=true; 
} 
}; 

var x =new Parent(); 
alert(x.lev()); 


说明:
1.动态原型方式可以理解为混合构造函数,原型方式的一个特例
2.该模式中,属性为方法的属性直接在函数中进行了定义,但是因为
if(typeof Parent._lev=="undefined"){ 

Parent._lev=true;} 

从而保证创建该对象的实例时,属性的方法不会被重复创建
3.,推荐使用这种模式


详细出处参考:http://www.jb51.net/article/25093.htm
分享到:
评论

相关推荐

    js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式).docx

    ### JavaScript面向对象之常见创建对象的方式 #### 引言 JavaScript 的灵活性体现在其创建对象的多种方式上。本文将详细介绍三种常见的对象创建方法:工厂模式、构造函数模式以及原型模式,并探讨它们各自的优缺点...

    js创建对象的几种常用方式小结(推荐)

    本文将对JavaScript创建对象的几种常用方式做一个总结,以便更好地理解和运用。 首先,我们来看**工厂方式**。这是一种创建对象的简单模式,它通过一个函数来创建具有特定属性的对象。在示例代码中,`Parent`函数...

    javascript创建对象的方式(一)

    这篇博文主要探讨了JavaScript创建对象的几种常见方式,这对于理解和掌握JavaScript面向对象编程至关重要。在实际开发中,了解并灵活运用这些方法能够提高代码的可读性和可维护性。下面,我们将详细讲解标题中提到的...

    JavaScript定义类或函数的几种方式小结

    工厂方式是JavaScript中创建对象的一种模式,它通过一个工厂函数来封装创建对象的代码。通过工厂函数,我们可以创建多个具有相同属性和方法的对象实例。工厂方式的代码示例如下: ```javascript function createCar...

    JS 创建对象(常见的几种方法)

    JavaScript作为一门面向对象的脚本语言,其创建对象的方式多种多样,每种方式都有其独特的特点和适用场景。下面我们逐一分析给定文件中所提到的几种创建对象的方法。 首先是使用构造函数模式创建对象。构造函数是...

    JS创建对象的几中方式

    在JavaScript中,创建对象有多种方法,每种方式都有其优缺点。以下是对这些方法的详细解释: 1. **工厂方式**: 工厂函数是通过一个函数来创建对象,它可以根据需要设置属性和方法。然而,这种方法的缺点是每个...

    javascript创建对象的方式(三)

    JavaScript 提供了多种创建对象的方式,每种都有其适用场景。字面量方式适用于简单对象,构造函数和原型对象适用于复杂且需要复用的情况,`Object.create()` 适用于创建新对象并指定原型,而 ES6 类则提供了面向对象...

    JS 5种遍历对象的方式

    感觉事情并不这么简单,于是我仔细看了一下这几种遍历对象的方法的区别 for in for in 循环是最基础的遍历对象的方式,它还会得到对象原型链上的属性 // 创建一个对象并指定其原型,bar 为原型上的属性 const obj =...

    js创建对象几种方式的优缺点对比

    本文将探讨JavaScript创建对象的几种常见方式,并分析它们的优缺点。 1. **工厂模式** 工厂模式通过一个函数来创建对象,如示例中的`createObj`函数。这种模式的优点是简单易懂,可以方便地创建具有相同属性和方法...

    javascript面向对象创建对象的方式小结

    本文将结合实例形式总结分析JavaScript中常见的七种创建对象的方式。 1. 通过内置Object对象的方式创建 这种方式通过调用Object构造函数创建新对象,然后通过点语法添加属性和方法。例如: ```javascript var o1 = ...

    Javascript对象定义的几种方式

    Javascript对象定义的几种方式

    JAVASCRIPT中定义对象的几种方式.pdf

    在讨论JavaScript中定义对象的几种方式之前,我们先理解一下JavaScript中的对象到底是什么。JavaScript是一种基于原型的编程语言,对象是其核心概念之一。对象可以被视为一个容器,存储各种键值对集合,键为属性名,...

    javascript中创建对象的几种方法总结

    在JavaScript中,有几种常见的创建对象的方法,这里我们将详细探讨这些方法。 1. **对象字面量**:这是最简单且直观的创建对象的方式。通过大括号 `{}` 创建一个空对象,然后通过点`.`或方括号`[]`来添加属性和方法...

    JS定义函数的几种常用方法小结

    本文实例讲述了JS定义函数的几种常用方法。分享给大家供大家参考,具体如下: 在 JavaScript 语言里,函数是一种对象,所以可以说函数是 JavaScript 里的一等公民(first-class citizens)。 之前我们这样定义过一个...

    javascript创建对象的方式(四)

    以上就是JavaScript创建对象的六种常见方式,每种都有其适用场景和优缺点。理解并熟练掌握这些方法,能够帮助你编写出更加灵活、可维护的代码。在实际项目中,根据需求选择合适的方法,可以提升代码质量和效率。

    JS对象创建的几种方式整理

    以下,我们来详细探讨在JavaScript中创建对象的五种主要方式: 第一种,使用Object构造函数创建对象。这是一种非常基础的创建对象方式,通过new操作符加上Object构造函数来创建一个新的对象实例。例如,创建一个名...

    Javascript创建自定义对象 创建Object实例添加属性和方法

    如下所示: 代码如下: var person...上面的例子创建了一个名为person的对象,并为它添加了三个属性(name、age和job)和一个方法(sayName())。其中,sayName()方法用于显示this.name()的值。早期的JavaScript开发人员

    在javascript中创建对象的各种模式解析

    在JavaScript中创建对象主要涉及以下几种模式: 1. 工厂模式 工厂模式是最早期的对象创建方式之一,它通过一个函数来创建对象,并返回新创建的对象。这种方法的核心是利用函数封装创建对象的细节,然后通过返回值来...

    js自定义对象

    工厂方法是一种常用的创建自定义对象的方式。它通过创建一个函数,函数返回一个对象,该对象就是自定义对象。例如: ``` function createPerson(name, age) { var o = new Object(); o.name = name; o.age = age;...

    javascript中创建对象的三种常用方法

    虽然不常用,但工厂函数也是一种创建对象的方式。它通过一个函数返回一个新的对象,不过这种方法并不体现对象的类型,也不利于扩展。例如: ```javascript function createObj(param) { var obj = new Object(); ...

Global site tag (gtag.js) - Google Analytics