作为js特有的一个语句,刚接触时只知道用来枚举对象属性,因为之前的实际工作中用得其实不多,后来看了几本书越发警惕for-in的局限性,今天参照书中的讲解明确一下。 《JS高级程序设计》: 1.for-in是一种精准的迭代语句,可以用来枚举对象属性。所有属性都会被枚举一遍。 2.由于对象的属性是无序的 ...
分类:
其他好文 时间:
2017-08-09 10:10:55
阅读次数:
165
读书笔记 - js高级程序设计 - 第十三章 事件 具备绘图能力的2D上下文 及文本API 很多浏览器对WebGL的3D上下文支持还不够好 有时候即使浏览器支持,操作系统如果缺缺乏必要的绘图驱动程序,则浏览器即使支持了也没用 <canvas> var drawing = document.getEl ...
分类:
Web程序 时间:
2017-07-31 10:05:35
阅读次数:
218
Node类型的变化 访问元素的样式 myDiv.style.backgroundColor = "red" myDiv.style.width = "100px" 计算的样式 记住所有计算的样式都是只读的 偏移量 offsetHeight 外边框外 offsetWidth offsetLeft 外边 ...
分类:
Web程序 时间:
2017-07-27 20:08:43
阅读次数:
185
对DOM的两个主要的扩展 Selectors API HTML5 Element Traversal 元素遍历规范 querySelector var body = document.querySelector("body"); var myDiv = document.querySelector( ...
分类:
Web程序 时间:
2017-07-27 20:08:36
阅读次数:
186
是文档的最外层元素,在Html页面中,文档元素始终都是<html>元素 在xml中,任何元素都可以是文档元素 Node.ELEMENT_NODE 元素 Node.ATTRIBUTE_NODE 属性 Node.TEXT_NODE 文本元素 Node.CDATA_SECTION_NODE Node.EN ...
分类:
Web程序 时间:
2017-07-27 00:57:27
阅读次数:
235
BOM的核心对象是window 它表示浏览器的一个实例,在浏览器中,window对象有双重角色,它既是通过js访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象,这意味着在网页中定义的任何一个对象,变量 和 函数 都以window作为其Global函数 窗口关系和frame 每 ...
分类:
Web程序 时间:
2017-07-25 21:20:46
阅读次数:
159
闭包 有权访问另一个函数作用域中的变量的函数 匿名函数 函数没有名字 少用闭包 由于闭包会携带包含它的函数的作用域,因此会比其它函数占用更多的内存。过度使用闭包可能会导致内存占用过多,我们建议读者只在绝对必要时再考虑使用闭包 模块模式 增强的模块模式 特权方法 有权访问私有变量的公有方法叫做特权方法 ...
分类:
Web程序 时间:
2017-07-25 19:54:12
阅读次数:
173
EcmaScript有两种属性 数据属性 和 访问器属性 数据属性有4个特性 Configurable Enumerable Writable Value 前三个值的默认值都为false 举例 Object.defineProperty( person, "name", { writable:fal ...
分类:
Web程序 时间:
2017-07-25 19:46:43
阅读次数:
139
5种基本数据类型 可以直接对值操作 判断引用类型 var result = instanceof Array 执行环境 每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中 执行环境的销毁 某个执行环境中的所有代码执行完毕后 该环境被销毁 保存在其中的所有变量了函数定... ...
分类:
Web程序 时间:
2017-07-23 10:14:30
阅读次数:
183
1.函数~函数声明和函数表达式 解析器在向执行环境加载数据时,函数声明和函数表达式的对待不同。 解析器会率先执行函数声明,将会在任何使用到它的地方前加载, 而对于函数表达式,只会在执行到的时候去加载;这就是函数声明提升的过程(function declaring hoisting). 如下这样子是可 ...
分类:
Web程序 时间:
2017-07-23 09:58:58
阅读次数:
179