JS中定义对象的几种方式

JavaScript中没有类的概念,只有对象。
在JavaScript中定义对象可以采用以下几种方式:
  1.基于已有对象扩充其属性和方法
  2.工厂方式
  3.构造函数方式
  4.原型(“prototype”)方式
  5.动态原型方式
一.基于已有对象扩充其属性和方法
这种方式的弊端:这种对象的可复用性不强,如果需要使用多个对象,还需要重新扩展其属性和方法。

var object = new Object();
object.name = "zhangsan";
object.sayName = function(name)
{
       this.name = name;
       alert(this.name);
}
object.sayName("lisi");

二.工厂方式

function createObject()
{
       var object = new Object();
       object.username = "zhangsan";
       object.password = "123";

       object.get = function()
       {
              alert(this.username + ", " + this.password);
       }
       return object;
}

var object1 = createObject();
var object2 = createObject();

object1.get();

改进一:采用带参数的构造方法:

function createObject(username, password)
{
       var object = new Object();

       object.username = username;
       object.password = password;

       object.get = function()
       {
              alert(this.username + ", " + this.password);
       }

       return object;
}

var object1 = createObject("zhangsan", "123");

object1.get(); 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 基于已有对象扩充其属性和方法 工厂方式 构造函数方式 原型(“prototype”)方式 动态原型方式 一,基于已...
    朴下柔阅读 370评论 0 0
  • 博客内容:什么是面向对象为什么要面向对象面向对象编程的特性和原则理解对象属性创建对象继承 什么是面向对象 面向对象...
    _Dot912阅读 1,454评论 3 12
  • 本章内容 理解对象属性 理解并创建对象 理解继承 面向对象语言有一个标志,那就是它们都有类的概念,而通过类可以创建...
    闷油瓶小张阅读 883评论 0 1
  • 函数和对象 1、函数 1.1 函数概述 函数对于任何一门语言来说都是核心的概念。通过函数可以封装任意多条语句,而且...
    道无虚阅读 4,664评论 0 5
  • 说到匠心,最容易联想到的一个词叫匠心独运,多么美妙,听起就有一种不凡不俗的味道,不愧于对工艺家最美的称赞。为啥会想...
    原鸣清阅读 472评论 0 0