摘要: 1、动态加载脚本(src 原理,异步,支持跨域)var loadScript = function (url, callback) { var script = document.createElement("script"); script.src = url; document... 阅读全文
posted @ 2014-05-29 16:15 farawayfromhome 阅读(487) 评论(0) 推荐(1) 编辑
摘要: location对象用来处理URL的相关信息1、获取查询字符串// 获取查询字符串对象var getQueryStringArgs = function () { var qs = (location.search.length > 0 ? location.search.slice(1) :... 阅读全文
posted @ 2014-05-29 14:14 farawayfromhome 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 在浏览器中window对象实现了JavaScript中的Global对象;window对象是最顶层的对象;所有其他全局的东西都可以通过它的属性检索到。var a = 5;window.aa = 10;// 所有全局变量都可以通过window的属性找到,但不是真正的属性console.log(wind... 阅读全文
posted @ 2014-05-29 11:38 farawayfromhome 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 在继承中常会出现两个问题: 父类的属性变成了子类的原型 构造器指向混乱寄生组合式继承解决了这样的问题: 属性继承到属性 原型继承到原型 构造器指向明确// 父类var Super = function(name) { this.name = name; this.friends = ["... 阅读全文
posted @ 2014-05-28 18:26 farawayfromhome 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 构造函数、原型对象、构造器是一体的关系,同时产生;实例中的隐藏属性__proto__指向原型对象;原型对象是这四种关系的纽带。原型对象是动态的,不论在何处变化,实例中可以立即体现出来。var Person = function(name) { this.name = name;};var p1... 阅读全文
posted @ 2014-05-28 14:02 farawayfromhome 阅读(309) 评论(0) 推荐(0) 编辑
摘要: /* * 正则替换%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) 编辑