摘要: /* * 正则替换%s * @para arg1(text) 需要替换的模版 * @para arg2 替换第一处%s * @para arg3 替换第二处%s * 返回替换后的字符串 */var sprintf = function (text) { var i = 1, ar... 阅读全文
posted @ 2014-05-27 23:01 farawayfromhome 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 规则1:隔离应用逻辑 这会让你的代码容易调试规则2:不要分发事件对象 event对象包含了太多信息// a good examplevar handlePopup = { // 事件句柄,处理所有和event对象有关的东西 handleClick: function (e) { ... 阅读全文
posted @ 2014-05-27 22:23 farawayfromhome 阅读(269) 评论(2) 推荐(0) 编辑
摘要: A.1 缩进// 4个空格的层级缩进if (true) { doSomething();}A.2 行的长度// 每行限于80个字符,超出则在运算符后换行,缩进2个层级(8个空格)doSomething(argument1, argument2, argument3, argument4, ... 阅读全文
posted @ 2014-05-27 21:55 farawayfromhome 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 为便于操作基本类型值,ECMAScript提供了3个特殊的引用类型:Boolean, Number 和 String// 字符串怎么会有方法呢var str1 = "some text", str2 = str1.slice(2);// JS引擎的解析原理类似这样;创建一个对应的基本包装类型的... 阅读全文
posted @ 2014-05-27 16:03 farawayfromhome 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 函数实际上是对象,每个函数都是Function类型的实例。函数是引用类型。函数名实际上是一个指向函数对象的指针,不会与某个函数绑定。// 这种写法更能表达函数的本质var sum = function(num1, num2) { return num1 + num2;};var another... 阅读全文
posted @ 2014-05-27 15:22 farawayfromhome 阅读(246) 评论(0) 推荐(0) 编辑
摘要: ECMAScript 中的 Date 类型是在早期 Java 的 java.util.Date 类基础上构建的。Date 类型使用自 UTC (国际协调时间)1970年1月1日午夜(零时)开始经过的毫秒数来保存日期。Date 对象的valueOf()方法可以获取这个毫秒数。使用本地化UTC的方式是较... 阅读全文
posted @ 2014-05-27 13:57 farawayfromhome 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 如果数组中全是Nunber类型,则可以按照数值大小排序var values = [0, 1, 5, 10, 15];// asc升序函数function compareAsc(value1, value2) { if (value1 > value2) { return 1; ... 阅读全文
posted @ 2014-05-27 13:01 farawayfromhome 阅读(386) 评论(2) 推荐(0) 编辑
摘要: JavaScript只有函数作用域;每个函数都有个作用域链直达window对象。变量的查找由内而外层层查找,找到即止。同时不仅可以查找使用,甚至可以改变外部变量。var color = "blue";function changeColor() { var anotherColor = "re... 阅读全文
posted @ 2014-05-27 11:03 farawayfromhome 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 一个完整的JavaScript实现由三部分组成(各个浏览器的具体实现又有所区别,这是导致兼容性的原因。): 核心:ECMAScript(ECMA-262) 文档对象模型:DOM(Document Object Model) 浏览器对象模型:BOM(Brower Object Model)ECMA-2... 阅读全文
posted @ 2014-05-27 09:51 farawayfromhome 阅读(123) 评论(0) 推荐(0) 编辑