摘要: Cnavas 绘图 1. 必须有 Canvas 画布才可以 2. 利用画布获得绘图工具 getContext( '2d' ) 平面图 getContext( 'webgl' ) 立体图 利用 2d 返回一个 CanvasRenderingContext2D 类型的对象 3. render 渲染( 刷 阅读全文
posted @ 2016-08-11 23:17 Sora.孙 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 在 js 中 无论是函数, 还是方法, 还是事件, 还是构造器, ... 其本质都是函数. 只是处在不同的位子而已. 四种: 1. 函数模式 2. 方法模式 3. 构造器模式 4. 上下文模式 函数模式 特征: 就是一个简单的函数调用. 函数名的前面没有任何引导内容. this 的含义: 在 函数中 阅读全文
posted @ 2016-08-08 23:54 Sora.孙 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 递归 什么是递归 在程序中, 所谓的递归, 就是函数自己直接或间接的调用自己. 1. 直接调用自己 2. 间接调用自己 就递归而言最重要的就是跳出结构. 因为跳出了才可以有结果. 所谓的递归就是化归思想 递归的调用, 写递归函数, 最终还是要转换为自己这个函数. 假如有一个函数 f, 如果它是递归函 阅读全文
posted @ 2016-08-07 14:21 Sora.孙 阅读(2360) 评论(1) 推荐(0) 编辑
摘要: 词法作用域 作用域 域表示的就是 范围, 即 作用范围. 就是一个名字在什么地方可以被使用, 什么时候不能使用. 块级作用域 即块级别的作用范围 在 js 中采用词法作用域 所谓的 词法( 代码 )作用域, 就是代码在编写过程中体现出来的作用范围. 代码一旦写好, 不用执行, 作用范围就已经确定好了 阅读全文
posted @ 2016-08-06 00:03 Sora.孙 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 变量名提升 1. 预解析的过程 2. 代码的执行过程 程序在执行过程, 会先将代码读取到内存中检查. 会将所有的声明在此时进行标记. 所谓的标记就是 让 js 解释器知道有这个名字, 后面在使用名字的时候, 不会出现未定义的错误. 这个标记过程就是提升. 声明: 1. 名字的声明, 标识符的声明( 阅读全文
posted @ 2016-08-05 23:55 Sora.孙 阅读(95) 评论(0) 推荐(0) 编辑