javascript:利用Object.create()方法创建对象
2012-09-15 22:38
776 查看
在javascript里面,我们知道有两种常见的创建对象的方法,一种是使用对象直接量:
对象直接量是由若干值/键对组成的映射表,值/键对用逗号”,“分隔开,整个部分用花括号”{}“括起来。
例如:
例如:
例如:
那么新创建的对象o的原型就是Object.create()中传入的参数,同时对象o也拥有了属性x。
当然也可以创造一个普通的控对象,类似于var o = {}的效果,只需要在将参数改为Object.prototype即可,让create出来的对象的原型=Object.prototype,其实也就是Object的实例了。
从上图可以看到,这三种方法创建的对象是一样的,即一个最普通的Object对象。
此外,还可以通过传入参数null来创建一个没有原型的新对象,这个功能是前两种方法所不具备的。
这个新建的对象很可怜,他没有任何的原型,也就是说它连Object内置的方法都没有,不能toString(),valueOf等等。
对象直接量是由若干值/键对组成的映射表,值/键对用逗号”,“分隔开,整个部分用花括号”{}“括起来。
例如:
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});
那么新创建的对象o的原型就是Object.create()中传入的参数,同时对象o也拥有了属性x。
当然也可以创造一个普通的控对象,类似于var o = {}的效果,只需要在将参数改为Object.prototype即可,让create出来的对象的原型=Object.prototype,其实也就是Object的实例了。
var o1 = Object.create(Object.prototype); var o2 = new Object; var o3 = {};
从上图可以看到,这三种方法创建的对象是一样的,即一个最普通的Object对象。
此外,还可以通过传入参数null来创建一个没有原型的新对象,这个功能是前两种方法所不具备的。
var o4 = Object.create(null);
这个新建的对象很可怜,他没有任何的原型,也就是说它连Object内置的方法都没有,不能toString(),valueOf等等。
相关文章推荐
- javascript:利用Object.create()方法创建对象
- javascript:利用Object.create()方法创建对象
- JavaScript新的对象创建方式---Object.create()
- JavaScript中使用Object.create()创建对象介绍
- Javascript创建自定义对象 创建Object实例添加属性和方法
- JavaScript中使用Object.create()创建对象介绍
- 一种新的javascript对象创建方式Object.create()
- Object.create() --- javascript一种新的对象创建方式
- ajax利用html5新特性带进度条上传文件 html5的FormData对象和input的file属性以及window.URL.createObjectURL( ) 方法
- 一种新的javascript对象创建方式Object.create()
- javascript的创建对象object.create()和属性检测hasOwnPrototype()和propertyIsEnumerable()
- JavaScript之基础-14 JavaScript Object对象(概述、创建对象、属性、方法)
- JavaScript对象系统深入剖析3-创建对象Object.Create
- javascript一种新的对象创建方式-Object.create()
- javascript一种新的对象创建方式-Object.create()
- JavaScript对象系统深入剖析3-创建对象Object.Create
- 【转】javascript一种新的对象创建方式-Object.create()
- javascript一种新的对象创建方式-Object.create()
- Javascript创建自定义对象 创建Object实例添加属性和方法
- JavaScript对象系统深入剖析3-创建对象Object.Create