虽然Object构造函数或者对象字面量都可以用来创建单个对象,但是缺点非常明显:使用同一接口创建很多对象,会产生大量重复代码. 工厂模式  1 function CreatePerson(name,age,job){ 2         var o=new Object(); 3         o.name=name; 4         o.age=age; 5         o.job=job; 6         o.sayName=function(){ 7            …
第六章——面向对象的程序设计 这一章主要讲述了:面向对象的语言由于没有类/接口情况下工作的几种模式以及面向对象语言的继承: 模式:工厂模式,构造函数模式,原型模式 继承:原型式继承,寄生式继承,以及寄生组合式继承…
从驱动全球商业.贸易及管理领域不计其数的复杂应用程序的角度来看,说 JavaScript 已经成为当今世界上最流行的编程语言一点儿都不为过. JavaScript 是一种非常松散的面向对象语言,也是 Web 开发中极受欢迎的一门语言. JavaScript,尽管它的语法和编程风格与 Java 都很相似,但它却不是 Java 的“轻量级”版本,甚至与 Java 没有任何关系. JavaScript 是一种全新的动态语言,它植根于全球数亿网民都在使用的 Web 浏览器之中,致力于增强网站和 Web…
第6章  面向对象的程序设计 6.2 创建对象 创建某个类的实例,必须使用new操作符调用构造函数会经历以下四个步骤: 创建一个新对象: 将构造函数的作用域赋给新对象: 执行构造函数中的代码: 返回新对象. 构造函数的问题:每个方法都要在每个实例上重新创建一遍: 理解原型对象: 无论何时,只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性,这个属性指向函数的原型对象.默认情况下,所有原型对象都会自动获得一个constructor属性,这个属性包含一个指向proto…
在HTML 中使用JavaScript <script>元素 在使用<script>元素嵌入 JavaScript 代码时,只须为<script>指定 type 属性.然后,像下面这样把 JavaScript 代码直接放在元素内部即可: <script type="text/javascript"> function sayHi(){ alert("Hi!"); } </script> 包含在<scr…
函数是JavaScript 中最有趣的部分之一.它们本质上是十分简单和过程化的,但也可以是非常复杂和动态的.一些额外的功能可以通过使用闭包来实现.此外,由于所有的函数都是对象,所以使用函数指针非常简单.这些令JavaScript 函数不仅有趣而且强大.以下几节描绘了几种在JavaScript 中使用函数的高级方法. 22.1.1 安全的类型检测 JavaScript 内置的类型检测机制并非完全可靠.事实上,发生错误否定及错误肯定的情况也不在少数.比如说typeof 操作符吧,由于它有一些无法预知…
这是我第一次用markdown,也是我第一次在网上记录我自己的学习过程. 第一章 JavaScript主要由以下三个不同的部分构成 ECMAScript   提供核心语言功能 DOM     提供访问和操作网页内容的方法和接口 BOM     浏览器对象模型,提供浏览器交互的方法和接口 第二章 关于<script>加了空格是否算报错 不会报错,但是这个标签会被解析失败,比如 <s cript></s>最后解析的会是删除线 s. 关于标签的大小写写错是否要紧 不要紧,但最…
IE5 是第一款引入XHR 对象的浏览器.在IE5 中,XHR 对象是通过MSXML 库中的一个ActiveX对象实现的.因此,在IE 中可能会遇到三种不同版本的XHR 对象,即MSXML2.XMLHttp.MSXML2.XMLHttp.3.0 和MXSML2.XMLHttp.6.0.要使用MSXML 库中的XHR 对象,需要像第18章讨论创建XML 文档时一样,编写一个函数,例如: //适用于IE7 之前的版本 function createXHR() { if (typeof argumen…
面向对象的程序设计 对象是一组没有特定顺序的值6.1.1 属性类型ECMAScript中有两种属性:数据属性和访问器属性.1. 数据属性Configurable 表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性.像前面例子中那样直接在对象上定义的属性,它们的这个特性默认值为true.Enumerable 表示能否通过for-in循环返回属性.像前面例子中那样直接在对象上定义的属性,它们的这个特性默认值为true.Writable 表示能否修改属…
富文本编辑,又称为WYSIWYG(What You See Is What You Get,所见即所得).在网页中编辑富文本内容,是人们对Web 应用程序最大的期待之一.虽然也没有规范,但在IE 最早引入的这一功能基础上,已经出现了事实标准.而且,Opera.Safari.Chrome 和Firefox 都已经支持这一功能.这一技术的本质,就是在页面中嵌入一个包含空HTML 页面的iframe.通过设置designMode 属性,这个空白的HTML 页面可以被编辑,而编辑对象则是该页面<body…