面象对象编程技术的核心理念:封装、继承、多态;在一些主流的高级编程语言中,比如:C#,VB.NET,JAVA,PHP等都是很容易实现的,而如果要在javascript中实现面象对象编程,可就不那么直接和容易了,因为javascript并不是面向对象的语言,所以我们只能通过javascript的一些特性,比如:闭包、原型链等来模拟出面向对象编程,我认为这些是作为熟练掌握与灵活运用javascript的基础,园子里已有很多的javascript高手对于这方面都有介绍与...
一、函数创建 1. 函数声明 (出现在全局作用域,或局部作用域)function add (a, b)
{return a + b;
}function add(a, b)
{return add1(a,b);function add1(m, n){return m + n;}
} 2. 函数表达式 作为普通变量var add = function (a, b){return a + b;
};作为对象方法var obj = { value: 0,add: function(a, b){return a + b;}
}; 作为函数返回值function add(a)
{var m = a;returnfunction(n){return m+n;};
}作为函数...
Web 的无所不在是它的魅力。保证任何人都能无障碍地使用它,是一个最基本的原则。 我非前端人员,后端才是我真正的目标,然而,在师兄的威逼之下,不得已要开始一个后端人员的前端之路....首先第一步是买了这本《Javascript DOM 编程艺术》,然后抽着时间一个星期看完了它。好吧,我承认我跳过了第十二章 ... = = 感觉有编程基础,特别是 C/C++ 基础看起来还是不太费劲的, Javascript 的语法很类似于 C/C++,而且宽松得多, 所...
DOM简介:说明: DOM(Document Object Model)文档对象模型,当网页被加载到WEB浏览器时,DOM树就自动被创建.它代表被加载到浏览器窗口里的当前网页,通过DOM树可以快速定位DOM对象中的元素或节点.注意: 如下内容并非专属于Js,而是DOM核心,也就是支持DOM的任何一种程序设计语言都可以使用它们,而且用途并不局限于处理网页,它们可以用来处理任何一种标记语言如XML文档节点分类:元素节点说明: 文档内的标签元素都属于元素节点,没有被包含在...
区别于Javascript脚本里的预先定义好的对象,宿主对象不是由Javascript语言本身提供的(内建对象)和用户自定义对象,它是由Javascript的运行环境(如web浏览器)提供的。这种Web提供的预定义对象我们称为宿主对象。
宿主对象主要包括From、Image、Element,Document、Windows(浏览器对象模型,BOM)原文:http://www.cnblogs.com/leitao166/p/3556104.html
第1章 Javascript简史Javascript是Netspace公司与Sun公司合作开发的,Javascript 1.0版于1995年推出。 为与微软公司竞争,Netspace公司和Sun公司联合ECMA制定了Javascript标准,因此Javascript有另一个名字:ECMAScript。 DOM是一套对文档内容进行抽象和概念化的方法。个人理解,就是浏览器把每一个加载的网页视作一个实例化的DOM类型对象,DOM相当于C++/Java中的class类,该class有一些数据成员/字段和成员函数/方法,我们可以通过...
1、 核心语法的学习 JS 变量类型 for .. in 语法 遍历JS对象属性 for循环、 if条件判断 函数定义三种方式function 函数名() {... }var 函数名 = function(){... }new Function(函数名, 参数 ,函数体)2、 全局函数 (系统函数 ) eval函数 ,将json字符串({key;value} 、[对象,对象])转换为js对象 parsetInt、parseFloat isNaN3、 内置对象String 字符串、Array 数组、Date日期 、...
作者: 阮一峰日期: 2010年5月24日这个系列的第一部分介绍了"封装",第二部分介绍了使用构造函数实现"继承"。今天是最后一个部分,介绍不使用构造函数实现"继承"。一、什么是"非构造函数"的继承?比如,现在有一个对象,叫做"中国人"。 var Chinese = { nation:‘中国‘ };还有一个对象,叫做"医生"。 var Doctor ={ career:‘医生‘ }请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一...
HTML变动最大的版本应该就是HTML5了,这里就介绍一些 HTML5新增的DOM相关的API与类相关的扩充HTML4在普及后有一个十分重要的变化,即class属性使用的场景越来越多所以HTML5新增了许多API致力于简化CSS类的用法 1. getElemenetsByClassName() 该方法接收一个参数(包含一个或多个类名的字符串),返回带有指定类名的元素的Nodelist,传入多个类名时类名的顺序没有影响2. classList属性 该属性保存有一个 DOMTokenList 的实例DOMTo...
变量声明:var v1,v2 = ‘hello‘,v3=42;javascript中的数据类型分两部分:基本类型(数字,字符串,布尔值,undefined,null)和对象类型。- 查看变量类型操作符 typeof 变量或数值- 当一个数字以0开头时,就表示这是一个八进制数。0377 代表十进制数255 ;0x前缀的是十六进制数- Infinity 任何超出了javascript的数,除以0结果也是Infinity- 字符串用于算术运算时,会被当做数字类型使用。字符串 -> 数字 将与1相乘即可。或者用...
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">//测试removeChild()方法 删除节点window.onload = function() {//alert(1);var bjNode = document.getElementById("bj");//var c = bjNode.parentNode.removeChild(bjNode);//指向已经删除的节点//alert(c.firstChild.nodeValue);//为li节点添加一个confirmvar liNodes = document.getElementsByTagNam...
一、继承 js并没有继承这一个现有的机制,所以我们所说的继承是通过JS本身的机制去实现的。1、类式继承 1// 类式继承 2 3// 父类 4function SuperClass () {5this.superValue = true 6}7 8// 为父类原型添加方法 9 SuperClass.prototype.getSuperValue = function (arguments) {
10returnthis.superValue
11}
1213// 声明子类14function SubClass () {
15this.subValue = false16}
1718// 继承父类19 SubClass.prototype = new S...
遍历“DOM2级遍历和范围” 定义了两个用于辅助完成顺序遍历的DOM结构类型NodeIterator 和 TreeWalk上述两种类型可以基于给定起点的DOM结构执行深度优先的遍历操作对于检测浏览器对于该功能的实现可以使用以下代码var supportTraversals = document.implementation.hasFeature("Traversal","2.0");var supportsNodeIterator = (typeof document.createNodeIterator === "function");var supportsTreeWalker = (typeof document.crea...
事件类型Web浏览器中可能发生的事件有许多种类型不同类型的事件都有着自己独特的信息在“DOM3级事件”规范中,规定了以下几类事件:UI事件 当用户与页面元素交互时触发焦点事件 当元素失去或获得焦点时触发鼠标事件 当用户通过鼠标在页面上执行操作时触发滚轮事件 当使用鼠标滚轮或类似设备时触发文本事件 当在文档中输入文本时触发键盘事件 当用户通过键盘在页面执行操作时触发合成事件 当为IME(输入法编辑...
什么叫非构造函数的继承?比如,现在有一个对象,叫做"中国人"。 var Chinese = { nation:‘中国‘ };还有一个对象,叫做"医生"。 var Doctor ={ career:‘医生‘ }请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一个"中国医生"的对象?这里要注意,这两个对象都是普通对象,不是构造函数,无法使用构造函数方法实现"继承"。二、object()方法object()函数,可以做到这一点。 functio...