随笔分类 - javascript读书笔记
1
摘要:location对象 location 是最有用的BOM 对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能。 事实上,location 对象是很特别的一个对象,因为它既是window 对象的属性,也是document 对象的属性;换句话说,window.location 和d
阅读全文
摘要:BOM 的核心对象是window,它表示浏览器的一个实例。在浏览器中,window 对象有双重角色,它既是通过JavaScript 访问浏览器窗口的一个接口,又是ECMAScript 规定的Global 对象。这意味着在网页中定义的任何一个对象、变量和函数,都以window 作为其Global 对象
阅读全文
摘要:执行环境(executioncontext,为简单起见,有时也称为“环境”)是JavaScript中最为重要的一个概念。执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中。 全局执行环境是最外围的一个
阅读全文
摘要:基本类型:指的是简单的数据段,Undefined、Null、Boolean、Number 和 String。他们是按照值进行分配的,存放在栈(stack)内存中的简单数据段,数据大小确定,内存空间大小可以分配。 基本数据类型是按值访问的,因为可以操作保存在变量中的实际值。 引用类型:指那些由多个值构
阅读全文
摘要:在看书上的传递参数时,看到说基本类型和引用类型在传递参数时都是按值传递的,特别是引用类型的传递参数,不是按引用传递的,又去网上查了一下关于引用类型的参数传递,发现了一个叫按共享传递的,看的很模糊,到底按值传递、按引用传递、按共享传递是什么,之间有什么区别,今天终于倒腾清楚了。 首先,基本类型和引用类
阅读全文
摘要:JavaScript中定义了两个单体内置对象:Global和Math。 Global对象 Global对象是JavaScript中最特别的一个对象。不属于任何其他对象的属性和方法,最终都是它的属性和方法。实际上,没有全局变量或全局作用域,所有在全局作用域中定义的属性和函数,都是Global对象的属性
阅读全文
摘要:和Java类似,为了便于操作基本类型值,ECMAScript也提供了3个特殊的引用类型:Boolean、Number和String。每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而让我们能够调用一些方法来操作这些数据。有点类似于Java的自动拆装箱过程,以String类型
阅读全文
摘要:在ECMAScript中函数实际上是对象。每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法。由于函数是对象,因此函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。函数通常是使用函数声明(定义函数的方法之一)语法定义的,如: 这与下面使用函数表达式(定义函数的方
阅读全文
摘要:函数会在执行完return语句之后停止并立即退出,因此,位于return语句之后的任何代码都不会执行。 严格模式对函数的限制: 不能把函数、参数命名为eval或arguments。 不能出现两个命名参数同名的情况 参数理解 ECMAScript中的参数在内部是用一个数组来表示的。函数接收到的始终是这
阅读全文
摘要:ECMAScript通过RegExp类型来支持正则表达式。使用下面语法就可以创建一个正则表达式。 模式(pattern):可以是任何简单或复杂的正则表达式,可以包含字符类、限定符、分组、向前查找以及反向引用。 标志(flags):每个正则表达式都可以有一或多个标志(flags),用以标明正则表达式的
阅读全文
摘要:要创建一个日期对象,使用new操作符和Date构造函数即可。 在调用Date构造函数而不传递参数的情况下,新创建的对象自动获得当前日期和时间。如果想根据特定的日期和时间创建日期对象,必须传入表示该日期的毫秒数(即从UTC时间1970年1月1日午夜起至该日期止经过的毫秒数)。为了简化这一计算过程,EC
阅读全文
摘要:关于类型转换,对象常见的两个方法是toString()和valueOf(),这两个方法也可以应用在包装类型上。 valueOf()方法:如果存在任意原始值,它就默认将对象转换为表示它的原始值;对象是复合值,而大多数对象无法真正表示为一个原始值,因此默认的valueOf()方法简单地返回对象本身,而不
阅读全文
摘要:引用类型的值(对象)是引用类型的一个实例。在ECMAScript中,引用类型是一种数据结构,它描述的是一类对象具有的属性和方法。 对象是某个特定引用类型的实例,新对象是使用new操作符后跟一个构造函数来创建的。 Object类型 大多数引用类型值都是Object类型的实例,Object是ECMASc
阅读全文
摘要:DOM3级事件中定义了以下9个鼠标事件: 除了mouseenter、mouseleave、dbclick是“DOM3级事件”新增之外,其它事件都是“DOM2级事件”中定义的。在一个元素上相继触发mousedown和mouseup事件,才会触发click事件。两次click事件相继触发才会触发dblc
阅读全文
摘要:DOM3级事件包括以下几类事件: UI事件:当用户与页面上的元素交互时触发 焦点事件:当元素获得或失去焦点时触发 鼠标事件:当用户通过鼠标在页面上执行操作时触发 滚轮事件:当使用鼠标滚轮时触发 文本事件:当在文档中输入文本时触发 键盘事件:当用户通过键盘在页面上执行操作时触发 合成事件:当为IME(
阅读全文
摘要:在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息:导致事件的元素、事件的类型、其他与特定事件相关的信息。 DOM中的事件对象 兼容DOM的浏览器会将一个event对象传入到事件处理程序中,无论指定事件处理程序时使用什么方法(DOM0级或DOM2级),都会
阅读全文
摘要:事件就是用户或浏览器自身执行的某种动作,例如click、load等,都是事件的名字,响应事件的函数叫做事件处理程序,事件处理程序的名字以“on”开头,例如click事件的事件处理程序就是onload。 1、HTML事件处理程序 每个元素支持的每种事件,都可以使用一个与相应事件处理程序同名的HTML特
阅读全文
摘要:在javascript中,添加到页面上的事件处理程序数量将直接关系到页面的整体运行性能,导致的原因: 每个函数都是对象,都会占用内存,内存的对象越多,性能就越差。 必须事先指定所有事件处理程序而导致的DOM访问次数,会延迟整个页面的交互就绪时间。 事件委托 对“事件处理程序过多”问题的解决方案是事件
阅读全文
摘要:3个键盘事件,如下: keydown:当用户按下键盘上的任意键时触发,而且如果按住不放的话,会重复触发此事件。 keypress:当用户按下键盘上的字符键时触发,而且如果按住不放的话,会重复触发此事件。 keyup:当用户释放键盘上的键时触发。 所有元素都支持以上3个事件,但只有在用户通过文本框输入
阅读全文
1

浙公网安备 33010602011771号