JavaScript中使用Object.create()创建对象介绍


Posted in Javascript onDecember 30, 2014

对于对象的创建,除了使用字面量和new操作符,在ECMAScript 5标准中,还可以使用Object.create()来进行。Object.create()函数接受2个对象作为参数:第一个对象是必需的,表示所创建对象的prototype;第二个对象是可选的,用于定义所创建对象的各个属性(比如,writable、enumerable)。

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

console.log(o);//Object {x=1, y=7}

console.log(o.__proto__);//Object {x=1, y=7}

将null作为第一个参数调用Object.create()将生成一个没有prototype的对象,该对象将不会具有任何基本的Object属性(比如,由于没有toString()方法,对这个对象使用+操作符会抛出异常):

var o2 = Object.create(null);

console.log("It is " + o2);//Type Error, can't convert o2 to primitive type

对于仅支持ECMAScript 3标准的浏览器,可以用Douglas Crockford的方法来进行Object.create()操作:

if (typeof Object.create !== 'function') {

    Object.create = function (o) {

        function F() {}

        F.prototype = o;

        return new F();

    };

}

newObject = Object.create(oldObject);
Javascript 相关文章推荐
彪哥1.1(智能表格)提供下载
Sep 07 Javascript
js split 的用法和定义 js split分割字符串成数组的实例代码
May 13 Javascript
JS中Iframe之间传值的方法
Mar 11 Javascript
javascript中局部变量和全局变量的区别详解
Feb 27 Javascript
深入浅析jQuery对象$.html
Aug 22 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
Feb 13 jQuery
vue实现a标签点击高亮方法
Mar 17 Javascript
微信小程序使用scroll-view标签实现自动滑动到底部功能的实例代码
Nov 09 Javascript
支付宝小程序自定义弹窗dialog插件的实现代码
Nov 30 Javascript
vue插件draggable实现拖拽移动图片顺序
Dec 01 Javascript
详解单页面路由工程使用微信分享及二次分享解决方案
Feb 22 Javascript
谈谈JavaScript中的函数
Sep 08 Javascript
JavaScript中对象property的读取和写入方法介绍
Dec 30 #Javascript
jQuery中:last选择器用法实例
Dec 30 #Javascript
JavaScript中对象property的删除方法介绍
Dec 30 #Javascript
JavaScript中检查对象property的存在性方法介绍
Dec 30 #Javascript
JavaScript中遍历对象的property的3种方法介绍
Dec 30 #Javascript
JavaScript语言对Unicode字符集的支持详解
Dec 30 #Javascript
JavaScript中的对象的extensible属性介绍
Dec 30 #Javascript
You might like
php堆排序实现原理与应用方法
2015/01/03 PHP
php实现将wav文件转换成图像文件并在页面中显示的方法
2015/04/21 PHP
合格的PHP程序员必备技能
2015/11/13 PHP
php实现用户登陆简单实例
2017/04/04 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
javascript表单验证和Window详解
2014/12/11 Javascript
angularjs基础教程
2014/12/25 Javascript
自定义刻度jQuery进度条及插件
2015/09/02 Javascript
JavaScript简单生成 N~M 之间随机数的方法
2017/01/13 Javascript
jQuery.cookie.js实现记录最近浏览过的商品功能示例
2017/01/23 Javascript
微信小程序 开发之全局配置
2017/05/05 Javascript
JS实现按钮控制计时开始和停止功能
2017/07/27 Javascript
关于layui表单中按钮自动提交的解决方法
2019/09/09 Javascript
Python 字符串中的字符倒转
2008/09/06 Python
python中sys.argv参数用法实例分析
2015/05/20 Python
python实用代码片段收集贴
2015/06/03 Python
Python中的集合类型知识讲解
2015/08/19 Python
python 遍历字符串(含汉字)实例详解
2017/04/04 Python
Python2实现的LED大数字显示效果示例
2017/09/04 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
CSS3中Transform动画属性用法详解
2016/07/04 HTML / CSS
Sephora丝芙兰澳洲官方网站:国际知名化妆品购物
2016/10/27 全球购物
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
英国婴儿和儿童服装网站:Vertbaudet
2018/04/02 全球购物
英国女鞋购物网站:Moda in Pelle
2019/02/18 全球购物
英国网上超市:Ocado
2020/03/05 全球购物
构造方法和其他方法的区别?怎么调用父类的构造方法
2013/09/22 面试题
销售自我评价
2013/10/22 职场文书
护理专业自荐信范文
2014/02/26 职场文书
幼儿园儿童节活动主持词+串词大全
2014/03/21 职场文书
药学职务聘任书
2014/03/29 职场文书
导师就业推荐信范文
2014/05/22 职场文书
小学社团活动总结
2014/06/27 职场文书
张思德观后感
2015/06/09 职场文书
MYSQL 的10大经典优化案例场景实战
2021/09/14 MySQL
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python