美文网首页
创建对象的方法

创建对象的方法

作者: 小王啊_ | 来源:发表于2017-07-11 14:52 被阅读0次

字面量创建对象

var obj = {
  name: '小王',
  age: '26',
  gender: 'male'
}

工厂方法

function createPerson (name, age, gender) {
  var obj = new Object();
  obj.name = name;
  obj.age = age;
  obj.gender = gender;
  obj.sayName = function () {
    console.log(name);
  }
  return obj;
}

var person1 = createPerson('小王', 29, '男');
var person2 = createPerson('小沈', 24, '男');

构造函数

function Person(name, age, gender) {
  this.name = name;
  this.age = age;
  this.gendr = gender;
  this.sayName = function () {
    console.log(this.name);
  }
}

var person1 = new Person('小王', 29, '男');
var person2 = new Person('小沈', 24, '男');

使用构造函数的缺点: 每次创建示例方法都需要重新创建一遍。这时候,改造下构造函数:


function Person(name, age, gender) {
  this.name = name;
  this.age = age;
  this.gendr = gender;
  this.sayName = sayName();
}

function sayName() {
  console.log(this.name);
}

现在我们共享了一个全局函数,避免了重复创建同一个函数,但是当构造函数需要很多函数,我们就需要创建很多全局函数,这样就毫无封装性可言。所以我们引入原型模式。

原型模式

function Person(name, age, gender) {
  this.name = name;
  this.age = age;
  this.gendr = gender;
}

Person.prototype.sayName = function () {
  console.log(this.name);
}

扩展

判断是否是原型属性

function hasPrototypeProperty(obj, pro) {
  return !obj.hasOwnProperty(pro) && (pro in obj);
}

相关文章

  • [Effective Java] (01)静态工厂方法代替构造器

    1. 创建对象 1.1 构造方法创建对象 在Java中,创建对象常用的方法是通过公有的构造方法创建;如:Boole...

  • 原型链相关问题

    创建对象有几种方法 使用对象字面量的方式创建 使用构造函数创建对象 使用Object.create()方法创建 原...

  • js原型链基础

    创建对象的方法: 面向对象

  • JS基础 - 创建对象

    一、创建对象 方法一 直接创建字面量 方法二 声明对象字面变量,向对象添加新成员 二、定义对象函数 方法一 对象字...

  • ThinkPHP3.2-CURD操作

    数据创建 create方法创建数据对象 create()方法支持从其他方式创建数据对象,例如,其他数据对象或者是数...

  • 创建对象方法

    (1)工厂模式 (2)构造函数模式 (3)原型模式 (4)组合使用构造函数模式和原型模式 (1)工厂模式:缺点:不...

  • Effective Java一书笔记

    对象的创建与销毁 Item 1: 使用static工厂方法,而不是构造函数创建对象:仅仅是创建对象的方法,并非Fa...

  • 创建对象的方法

    备注:这里对于用字面量形式和Object构造函数就不做过多的声明 工厂模式 这种方式本质上其实就是对Object构...

  • 创建对象的方法

    某面试题:Java中创建实例化对象有哪些方式?①最常见的创建对象方法,使用new语句创建一个对象。②通过工厂方法返...

  • 创建对象的方法

    字面量创建对象 工厂方法 构造函数 使用构造函数的缺点: 每次创建示例方法都需要重新创建一遍。这时候,改造下构造函...

网友评论

      本文标题:创建对象的方法

      本文链接:https://www.haomeiwen.com/subject/yhfmhxtx.html