摘要: 函数 1. 首先是很多地方用到的原型继承。 首先检测原生的Object.create是否存在,不存在就借用一个空的构造函数来实现原型继承。 2. 函数绑定 sourceFunc是需要绑定的函数,boundFunc是绑定函数,context是绑定的作用域,callingContext是函数的... 阅读全文
posted @ 2016-01-03 16:49 black_star 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 二、数组 1. 首先说说里面碰见的比较多的一个值:void 0, void本身是一个操作符,对表达式求值,并返回 undefined。所以void 0 其实就是等于undefined的,由于undefined本身在浏览器中的差异,有些undefined可以被重写,所以使用void 0 代替und... 阅读全文
posted @ 2015-12-31 00:20 black_star 阅读(121) 评论(0) 推荐(0) 编辑
摘要: underscore源码学习笔记 一、集合 1. 首先是几个迭代的方法。 ES为数组同样添加了原生的forEach()方法。不同的是这里的each(forEach)方法可以对所有集合使用,函数接受三个参数(集合、迭代函数、执行环境)。 optimizeCb函数根据 迭代函数参数个数的不... 阅读全文
posted @ 2015-12-30 00:01 black_star 阅读(381) 评论(0) 推荐(0) 编辑
摘要: backbone源码学习笔记(一) 一、总体结构 主要是用立即执行函数形成单独的作用域,避免污染全局空间,传入了作用域和Backbone的函数,闭包内部首先对amd和cmd模块化进行查询和处理,如果不支持模块化,就把该函数返回给root.Backbone,该函数接受四个参数,分别是root,ro... 阅读全文
posted @ 2015-12-29 13:14 black_star 阅读(112) 评论(0) 推荐(0) 编辑
摘要: js dom高级程序设计学习笔记 一、创建可重用的对象 1. 对象分为两种:function对象和object对象。 2. 向function对象添加静态属性和方法,仅 对该构造函数才能访问 ,对其实例是无法访问的。要想添加公有属性和方法,需使用 Prototype ,使用prototype定义... 阅读全文
posted @ 2015-12-27 20:21 black_star 阅读(113) 评论(0) 推荐(0) 编辑
摘要: Git 常用命令 git init here 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息、标记等内容 git remote add origin git@github.com:winter1991/helloworld.... 阅读全文
posted @ 2015-12-21 23:06 black_star 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 编写高质量JavaScript的有效方法 一、js的特别之处 1. 浮点数计算不精确,应该尽量转为整数进行计算 2. 当心强制的类型转换。 NaN是js中唯一一个不等于自身的值,可以利用这一点来检测NaN. js中的七个假值:false,0, 0,null,undefined,NaN,"".... 阅读全文
posted @ 2015-12-21 14:23 black_star 阅读(177) 评论(0) 推荐(0) 编辑
摘要: layout: default title: "JavaScript设计模式学习笔记" date: 2015 12 04 14:29:29 +0800 categories: design partern JavaScript设计模式学习笔记 一、富有表现力的javascript ... 阅读全文
posted @ 2015-12-21 14:23 black_star 阅读(181) 评论(0) 推荐(0) 编辑
摘要: JavaScript模式学习笔记 一、基本技巧 尽量少使用全局变量 使用单一var模式,即在函数顶部只用一个var进行多个变量声明; 为了避免变量提升,使用单一var模式; for循环时缓存length,提高速度; for循环遍历数组,for in遍历对象; 不要为内... 阅读全文
posted @ 2015-12-21 14:22 black_star 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 高性能JavaScript学习笔记 一、加载和执行 1. 脚本文件应该放在body标签的最后面。 2. 合并多个script以减少Http请求。 3. 无阻塞的脚本: 为script标签添加defer属性(仅ie 和firefox支持) 使用dom操作动态加载脚本。(推荐) 先添加动态加... 阅读全文
posted @ 2015-12-21 14:18 black_star 阅读(169) 评论(0) 推荐(0) 编辑