JavaScript创建对象的三种方法
在 JavaScript 中我们知道无法通过类来创建对象,那么如何创建对象呢?
(1)通过“字面量”方式创建对象
将你的信息写到{ }中,并赋值给一个变量,此时这个变量就是一个对象,例:
var game = {
     first : "吃鸡",
     two : "英雄联盟",
 }
 console.log(game.first)   // 输出"吃鸡"
 //对象的添加
 obj.three = "王者荣耀"
 console.log(game)   //会输出以上三个信息
 //对象的删除
 delete game.two
 console.log(game.two)   //输出undefined  
注意:编写信息时一定要是(属性:属性值,)
当{ }为空时,将创建一个空的对象
var game = {}    //创建空对象  
(2)通过“构造函数”方式创建对象
var game = new 函数名();
通过该方法创建对象时,会自动执行该函数
function Game = {
    this.first = "吃鸡";
    this.two = "英雄联盟";
    this.three = "王者荣耀";
}
//用new关键字调用
var game = new Game()
console.log(game.first)  //输出"吃鸡"  
使用new关键字实例化的时候发生了什么?
以上文中的Game()函数举个例子:
- 第一步,创建一个空对象。 
var game={} - 第二步,将构造函数Game()中的this指向新创建的对象game。
 - 第三步,执行构造函数Game()内的代码。
 
(3)通过“Object”方式创建对象
先通过object构造器new一个对象,再往里丰富成员信息
var game = Object();
game.first = "吃鸡";
game.two = "王者荣耀";
console.log(game.first) //输出"吃鸡"
(4)通过“create”方式创建对象
通过create创建对象,创建的是原型对象,例:
var game = {
    first : "吃鸡",
    two : "王者荣耀",
}
var game_1 = Object.create(game);
console.log(game_1.first)   //输出"吃鸡"  
JavaScript创建对象的三种方法的更多相关文章
- Javascript 创建对象的三种方法及比较【转载+整理】
		
https://developer.mozilla.org/zh-CN/docs/JavaScript/Guide/Inheritance_and_the_prototype_chain 本文内容 引 ...
 - C++创建对象的三种方法
		
我自己以前经常弄混 A a(1); 栈内存中分配 A b = A(1); 栈内存中分配,和第一种无本质区别 A c = new A(1); 堆内存中分配 前两种在函数体执行完毕之后会被释放,第三种需要 ...
 - JavaScript创建对象的4种方法
		
我们有很多种方式去构造一个对象.可以构造一个对象字面量,也可以和new前缀连用去调用一个构造器函数,或者可以使用Object.create方法去构造一个已经存在的对象的新实例,还可以调用任意一个会返回 ...
 - JavaScript | 创建对象的9种方法详解
		
————————————————————————————————————————————————————————— 创建对象 标准对象模式 "use strict"; // *** ...
 - js创建对象的三种方法:文本标识法和构造器函数法和返回对象的函数
		
文本标识法和定义变量差不多,像这样 var obj = {name:'HanMM','2':'Dali'}; 函数构造器法 先创建一个对象函数 function Obj() { this.addre ...
 - sqlserver2012——SqlCommand创建对象的三种方法
		
1.使用不带参构造函数 SqlCommand cmd = new SqlCommand(); cmd.Connection = SqlConnnection对象: cmd.CommandText=Sq ...
 - JavaScript创建对象的七种方法
		
一. 工厂模式 创建: function createPerson(name,behavior){ var p=new Object(); p.name=name; p.behavior=behavi ...
 - js创建对象的三种方法
		
1.使用对象初始化器:{} var person = {....} 2 var person=new object() function person(参数) { this.参数=... } var ...
 - Javascript 创建对象的三种方式
		
function createPerson(name, qq) //工厂方式 { //在工厂里创建个对象 var obj=new Object(); obj.name=name; obj.qq=qq; ...
 
随机推荐
- SpringMVC框架下实现分页功能
			
1.创建实体类Page.java @Entity public class Page { private int totalRecord;// 表示查询后一共得到多少条结果记录 private int ...
 - PCA (主成分分析)详解——转载 古剑寒
			
转载地址:http://my.oschina.net/gujianhan/blog/225241 另外可以参考相关博文:http://blog.csdn.net/neal1991/article/de ...
 - struts2====之=======初识struts
			
---恢复内容开始--- 1.什么是web框架? 目前应用得较多的三种服务器瑞页面描写技术就是ASP,JSP和PHP.J S P通过在HTMLJî面 文件中嵌入J a v a脚本代码,从而实现动态网页 ...
 - PAT 1030 Travel Plan
			
#include <cstdio> #include <cstdlib> #include <vector> #include <queue> #inc ...
 - mysql四-1:单表查询
			
一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二.关键 ...
 - 2729:Blah数集
			
2729:Blah数集 查看 提交 统计 提问 总时间限制: 3000ms 内存限制: 65536kB 描述 大数学家高斯小时候偶然间发现一种有趣的自然数集合Blah,对于以a为基的集合Ba定义如下: ...
 - mui使用技巧
			
1.document.addEventListener('plusready', function(){ //console.log("所有plus api都应该在此事件发生后调用,否则会出 ...
 - html 表格边框的设置
			
对于很多初学HTML的人来说,表格<table>是最常用的标签了,但对于表格边框的控制,很多初学者却不甚其解. 一般我们用表格的时候总会给它个border属性,比如:<table b ...
 - Deep Transfer Network: Unsupervised Domain Adaptation
			
转自:http://blog.csdn.net/mao_xiao_feng/article/details/54426101 一.Domain adaptation 在开始介绍之前,首先我们需要知道D ...
 - matlab练习程序(演化策略ES)
			
还是这本书上的内容,不过我看演化计算这一章是倒着看的,这里练习的算法正好和书中介绍的顺序是相反的. 演化策略是最古老的的演化算法之一,和上一篇DE算法类似,都是基于种群的随机演化产生最优解的算法. 算 ...