博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
创建对象的4种方式
阅读量:6172 次
发布时间:2019-06-21

本文共 1202 字,大约阅读时间需要 4 分钟。

Js创建对象的几种方式:

  1. 使用系统构造函数创建对象    Object   

var smallDog=new Object();

    smallDog.name="大黄";

    smallDog.age=3;

    smallDog.color="黄色";

    smallDog.weight="250";

    smallDog.eat=function () {

        console.log("我要吃大骨头");

    };

    smallDog.walk=function () {

        console.log("走一步摇尾巴");

    };

    smallDog.eat();//方法的调用 的时候需要()

        smallDog.walk();

  1. 使用字面量方式创建对象

                      var  person={};

                             person.name=’小白’;

  1. 工厂模式创建对象(由系统构造函数演变到工厂模式创建对象)

创建学生的对象

创建小狗的对象

         创建人的对象

         ~~~~~~

         每次都要不同对象,这里的对象的特征相同

         可以使用工厂模式对他们进行加工

         function createObject(name,age) {

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

      //添加属性

      obj.name = name;

      obj.age = age;

      //添加方法

      obj.sayHi = function () {

        console.log("阿涅哈斯诶呦,我叫:" + this.name + "我今年:" + this.age);

      };

      return obj;

    }

    //创建人的对象

    var per1 = createObject("小芳",20);

    per1.sayHi();

    //创建一个人的对象

    var per2 = createObject("小红",30);

    per2.sayHi();

 

 

  1. 自定义构造函数创建对象(构造函数首字母必须是大写)

function Person(name,age) {        //自定义的构造函数

      this.name=name;

      this.age=age;

      this.sayHi=function () {

        console.log("我叫:"+this.name+",年龄是:"+this.age);

      };

    }

var obj=new Person("小明",10);    //创建的对象

    console.log(obj.name);

    console.log(obj.age);

    obj.sayHi();

 

    var obj2=new Person("小红",20);

    console.log(obj2.name);

    console.log(obj2.age);

    obj2.sayHi();

 

自定义构造函数创建对象: 先自定义一个构造函数, 然后创建对象

转载于:https://www.cnblogs.com/zcafe/p/11084205.html

你可能感兴趣的文章
在 Linux 中查看你的时区
查看>>
Linux集群和自动化维1.6 小结
查看>>
《OpenACC并行编程实战》—— 第1章 并行编程概览 1.1 加速器产品
查看>>
C语言OJ项目参考(2417) 字符串长度
查看>>
ajax的手写、封装和自定义设置
查看>>
class path resource [META-INF/xfire/services.xml] cannot be opened because it does not exist
查看>>
android自定义属性
查看>>
ERROR 1114 (HY000): The table 'table1' is full
查看>>
知乎网友神回复:哪怕是平时聊天吹牛的也没见程序员晒,这是为什么呢?
查看>>
Android实训案例(三)——实现时间轴效果的ListView,加入本地存储,实现恋爱日记的效果!...
查看>>
phalapi-进阶篇2(DI依赖注入和单例模式)
查看>>
MySQL 5.7.5 : GTID_EXECUTED系统表
查看>>
Hybrid框架UI重构之路:四、分而治之
查看>>
【原创】Valgrind 基础
查看>>
Es6系列之destructuring assignments
查看>>
CSS ID选择器与CLASS选择器
查看>>
mysql 索引B-Tree类型对索引使用的生效和失效情况详解
查看>>
指针的看法
查看>>
Cocos-2d 坐标系及其坐标转换
查看>>
LAMP网站的CACHE机制概要
查看>>