码迷,mamicode.com
首页 > 编程语言 > 详细

javascript:利用Object.create()方法创建对象

时间:2014-12-02 20:44:27      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   color   os   使用   sp   java   

在javascript里面,我们知道有两种常见的创建对象的方法,一种是使用对象直接量:

对象直接量是由若干值/键对组成的映射表,值/键对用逗号”,“分隔开,整个部分用花括号”{}“括起来。

例如:

var empty={};  
var people = {  
  name:‘kobe‘,  
  age:‘34‘  
};  

 

另外一种方法是通过new创建对象:在new后面使用一个函数调用,这个函数也成为构造函数,通过new来初始化一个新的对象。

例如:

 

var arr = new Array();  
var date = new Date();  
var obj = new Object();  

 

其实javascript在ECMAScript5中还定义了一个方法来创建一个对象,Object.create()参数可以是某个对象

例如:

 

var o = Object.create({x:1});  

bubuko.com,布布扣

那么新创建的对象o的原型就是Object.create()中传入的参数,同时对象o也拥有了属性x。

 

当然也可以创造一个普通的控对象,类似于var o = {}的效果,只需要在将参数改为Object.prototype即可,让create出来的对象的原型=Object.prototype,其实也就是Object的实例了。

 

1 var o1 = Object.create(Object.prototype);  
2 var o2 = new Object;  
3 var o3 = {};  

bubuko.com,布布扣

 

从上图可以看到,这三种方法创建的对象是一样的,即一个最普通的Object对象。

 

此外,还可以通过传入参数null来创建一个没有原型的新对象,这个功能是前两种方法所不具备的。

 

var o4 = Object.create(null);  

bubuko.com,布布扣

 

这个新建的对象很可怜,他没有任何的原型,也就是说它连Object内置的方法都没有,不能toString(),valueOf等等。

 

【转载】http://blog.csdn.net/hutaoer06051/article/details/7983316

 

javascript:利用Object.create()方法创建对象

标签:style   blog   http   ar   color   os   使用   sp   java   

原文地址:http://www.cnblogs.com/julin-peng/p/4138296.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!