构造器模式 :

  Constructor模式中, 通过在构造器前面加 new 关键字, 告诉JavaScript 像使用构造器一样实例化一个新对象,并且对象成员由该函数定义。

  构造器内, 使用this 引用新创建的对象。

  JavaScript中有一个名为prototype的属性, 调用JavaScript构造器创建一个对象后,新对象就会具有构造器原型的所有属性。

  设置属性:

    1) 使用 .  2) 使用 []

    3) 使用Object.defineProperty

    4) 使用Object.defineProperties

var newObject = {};

//var newObject = new Object();

newObject.someKey = 'Hello World!';
var key = newObject.someKey; newObject['someKey'] = 'Hello World!!!';
Object.defineProperty(newObject, "someKey", {
value : 'for more control of the property\' behavior ',
writable : true,
enumerable : true,
configurable : true
}); var defineProp = function (obj, key, value) {
config.value = value;
Object.defineProperty(obj, key, config);
} var person = Object.create(null); defineProp(person, 'car', 'delorean');
defineProp(person, 'dateOfBirth', '1981');
defineProp(person, 'hasBeard', false); Object.defineProperties(newObject, {
"someKey" : {
"value" : "Hello World",
writable : true
}, "anotherKey" : {
value : "Foo bar",
writable : false
}
});

Constructor JavaScript构造器模式。的更多相关文章

  1. 常用的JavaScript设计模式(一)Constructor(构造器)模式

    在es6中,新增了一个语法糖--class,可以说是为JavaScript引入了类的概念.而在传统的JavaScript中,则是通过构造器生成实例对象的. JavaScript支持特殊的constru ...

  2. JavaScript设计模式一:工厂模式和构造器模式

    转自:http://segmentfault.com/a/1190000002525792 什么是模式 前阵子准备期末考试,挺累也挺忙的,实在闲不得空来更新文章,今天和大家说说javascript中的 ...

  3. javascript设计模式:构造器模式学习一

    javascript 设计模式1.简介javascript是一种弱类型语言,不过类可以通过函数模拟出来最常见的实现方法如下:function Car(model){ this.model = mode ...

  4. 面向对象的JavaScript --- 原型模式和基于原型继承的JavaScript对象系统

    面向对象的JavaScript --- 原型模式和基于原型继承的JavaScript对象系统 原型模式和基于原型继承的JavaScript对象系统 在 Brendan Eich 为 JavaScrip ...

  5. Javascript原型模式总结梳理

    在大多数面向对象语言中,对象总是由类中实例化而来,类和对象的关系就像模具跟模件一样.Javascript中没有类的概念,就算ES6中引入的class也不过是一种语法糖,本质上还是利用原型实现.在原型编 ...

  6. javascript运行模式:并发模型 与Event Loop

    看了阮一峰老师的JavaScript 运行机制详解:再谈Event Loop和[朴灵评注]的文章,查阅网上相关资料,把自己对javascript运行模式和EVENT loop的理解整理下,不一定对,日 ...

  7. JavaScript严格模式详解

    转载自阮一峰的博客 Javascript 严格模式详解   作者: 阮一峰 一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:"严格模式"(strict m ...

  8. (转)深入理解JavaScript 模块模式

    深入理解JavaScript 模块模式 (原文)http://www.cnblogs.com/starweb/archive/2013/02/17/2914023.html 英文:http://www ...

  9. JavaScript严谨模式(Strict Mode)

    下面的内容翻译自It’s time to start using JavaScript strict mode,作者Nicholas C.Zakas参与了YUI框架的开发,并撰写了多本前端技术书籍,在 ...

随机推荐

  1. 关于SQL 系统自带存储过程的使用 (一)

    关于SQL,一边恐惧一边前行,战战兢兢,如履薄冰. 1.那些Maggie教我的事 因为脚本老是倒不齐全,QA某次跟我要了三次脚本,于是乎求助公司DBA. 利用SQL server本身的查询,找出最近修 ...

  2. 关于offsetTop offsetHeight clientHeight scrollHeight scrollTop的区别研究

    我是以chrome浏览器做的研究. 先看一段代码: <script> window.addEventListener('DOMContentLoaded',function(){ var ...

  3. 移动端的几款jq插件

    移动手机用户的数量每日都在增长,人们现在都习惯于使用手机来浏览网页,看小说,读新闻.如何确保你的网站对移动用户友好,是目前你需要解决的最重要的问 题之一.这里给大家介绍10款在移动手机上使用的jQue ...

  4. Backup Exec Inventory 与Catalog的含义(转载)

    编录:即catalog,就是让磁带机读取磁带之前所备份过的内容的目录列表,可以让你知道之前做过什么备份,以及备份时间等详细信息. 列清单:inventory,跟编录是不同,inventory是查询磁带 ...

  5. Android EditText小结

    防止EditText获取焦点弹出输入法 android:focusable="true" android:focusableInTouchMode="true" ...

  6. 自定义Dialog,实现由下而上的弹出效果(模仿QQ退出等)

    方法: public Dialog createDialog(Context context, View view) { Dialog mSelectPhotoDialog = null; mSele ...

  7. 自定义不等高的cell-(纯代码)frame

    给模型增加frame数据 所有子控件的frame cell的高度 @interface XMGStatus : NSObject /**** 文字\图片数据 ****/ // ..... /**** ...

  8. js获取url传递参数的写法

    获取url地址?后面参数值的写法 正则: function GetQueryString(name) { var reg = new RegExp("(^|&)"+ nam ...

  9. Qt标题栏图标和运行程序图标设置

    一.标题栏图标 1.*.qrc资源文件中添加图片 2.添加代码 setWindowIcon(QIcon(":/images/paste.png")); //设置窗口上的图标,需要在 ...

  10. Flink Program Guide (10) -- Savepoints (DataStream API编程指导 -- For Java)

    Savepoint 本文翻译自文档Streaming Guide / Savepoints ------------------------------------------------------ ...