JavaScript创建对象简单的说,无非就是使用内置对象(Object)或各种自定义对象,当然还可以用JSON,但写法有很多种,也能混合使用。

1、对象字面量的方式

person = {name : 'limengyi' , age = 21 };

2、用function来模仿无参构造函数

	function Person(){};

	//定义了一个function,如果使用new“实例化”,该function可以看作一个class
var person = new Person(); person.name = 'limengyi';
person.age = 21;
person.sayInfo = function(){
alert("我叫 "+person.name+","+person.age+"岁");
} person.sayInfo();

3、用function来模拟有参构造函数(用this关键字定义构造的上下文属性)

	function Person(name,age){
this.name=name; //this作用域:当前对象
this.age=age;
this.sayInfo=function(){
alert("我叫 "+this.name+","+this.age+"岁")
}
} var person = new Person('limengyi',21); person.sayInfo();

4、用工厂方式来创建(使用内置对象Object)

	var person = new Object();

    person.name='limengyi';
person.age=21;
person.sayInfo=function(){
alert("我叫 "+person.name+","+person.age+"岁")
} person.sayInfo();

5、用原型方法创建

	function Person(){};

    Person.prototype.name='limengyi';
Person.prototype.age=21;
Person.prototype.sayInfo=function(){
alert("我叫 "+this.name+","+this.age+"岁")
} var person = new Person(); person.sayInfo();

6、用混合方式(有参构造函数 + 原型方法)创建

用有参构造函数设置每个实例特有的属性和方法

用原型方法设置所有实例共享的属性和方法

	function Person(name,age){
this.name=name;
this.age = age;
} Person.prototype.sayInfo=function(){
alert("我叫 "+this.name+","+this.age+"岁")
} var person1 = new Person('limengyi',21);
var person2 = new Person('lee',12); person1.sayInfo(); //"我叫 limengyi,21岁"
person2.sayInfo(); //"我叫 lee,12岁"

JavaScript创建对象的6种方式的更多相关文章

  1. JavaScript 创建对象的七种方式

    转自:xxxgitone.github.io/2017/06/10/JavaScript创建对象的七种方式/ JavaScript创建对象的方式有很多,通过Object构造函数或对象字面量的方式也可以 ...

  2. JavaScript创建对象的几种 方式

    //JavaScript创建对象的七种方式 //https://xxxgitone.github.io/2017/06/10/JavaScript%E5%88%9B%E5%BB%BA%E5%AF%B9 ...

  3. javascript创建对象的几种方式

    javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON:但写法有很多种,也能混合使用.主要为下面几种:1.对象字面量的方式 person={firstname ...

  4. [转载]javascript创建对象的几种方式

    原文链接:http://qingfeng825.iteye.com/blog/1935648 1. 工厂方法:能创建并返回特定类型对象的工厂函数(factory function). function ...

  5. javascript创建对象的几种方式?

    javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON:但写法有很多种,也能混合使用. 1.对象字面量的方式 person={ firstname:" ...

  6. JavaScript创建对象的几种方式总结

    ECMA把对象定义为:无序属性的集合,其属性可以包含基本值.对象或者函数. 1. 使用Object构造函数创建对象 创建自定义对象的最简单的方式就是创建一个Object的实例,然后再为它添加属性和方法 ...

  7. javascript 创建对象的几种方式

    1. //基于已有对象扩充其属性和方法var object = new Object(); object.name = "zhangsan"; object.sayName = f ...

  8. Javascript 创建对象的三种方式

    function createPerson(name, qq) //工厂方式 { //在工厂里创建个对象 var obj=new Object(); obj.name=name; obj.qq=qq; ...

  9. javascript创建对象的7种方式

    /*1.工厂模式*/ function createPerson(name,age,job) { var o = new object(); o.name = name; o.age = age; o ...

随机推荐

  1. 【转】解决IDEA新建项目名称为红色

    idea如果当前project用了版本控制器,其下面新建的所有的项目默认都是加入到版本控制里面,所以项目名称和文件都是红色的,如图: File-->Settings-->version c ...

  2. leetcode实践:找出两个有序数组的中位数

    题目 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 代码实现 package com. ...

  3. HTML列表(组标签)+div(布局标签)与span

    一.列表 HTML中常见的列表有三种,分别是: 1.无序列表,是一组描述列表语义的组标签,列表中每个项之间没有先后顺序:如图: 1)组标签:组标签就是由多个标签组成的一个整体,它们之间共同存在:例如 ...

  4. python学习之老男孩python全栈第九期_数据库day004 -- 作业

    https://www.cnblogs.com/YD2018/p/9451809.html 11. 查询学过“001”并且也学过编号“002”课程的同学的学号.姓名 select student.si ...

  5. CSS实现各类分栏布局

    在CSS中,实现分栏布局有两种方法.第一种方法是使用四种CSS定位选项(absolute .static.relative和fixed)中的绝对定位(absolute positioning),它可以 ...

  6. DBFlow(4.2)新版使用

    DBFlow新版使用 一.DBFlow4.2.4介绍 DBFlow是一个基于AnnotationProcessing(注解处理器)的ORM框架.此框架设计为了速度.性能和可用性.消除了大量死板的数据库 ...

  7. Django 请求参数

    Django 请求参数 1.获取URL路径中的参数 需求:假设用户访问127.0.0.1/user/1/2,你想获取1,2.应该怎么操作呢? (1)未命名参数(位置参数) # 在项目下的urls.py ...

  8. vmware虚拟机挂载Windows磁盘的两种方法

    第一种 vmware虚拟机通过ntfs-3g挂接windows盘 1.共享windows盘虚拟机设置——>添加硬盘——>选择IDE——>使用物理磁盘——>选择本地盘(单分区)— ...

  9. CCSUOJ评测系统——第一次scrum冲刺

    1.第一次冲刺任务安排 对Github上的HUSTOJ开源项目进行Fork,搭建基本环境 2.用户需求 ①基本功能显示在首页 ②能够提交题目并判题,并对自己所提交的题目正确性进行反馈,能够查看自己提交 ...

  10. 9 tensorflow提示in different while loops的错误该如何解决

    示例代码 ii=tf.constant(0,dtype=tf.int32) loop__cond=lambda a: tf.less(a,sentence_length) loop__vars=[ii ...