摘要: 1看目录结构,代码不算多,命名划分很清晰,仅看命名大概能猜到它的作用,比如require.js源码舒服多了sea.js - 定义sea.js的命名空间,在命名空间定义一些供内部适用的模块,达到分模块调试sea.js的目的util前缀的文件 :相对通用的工具类函数util-lang.js - 实现了一些基础函数,比如forEach, map等util-error.js - 提供错误输出的帮助函数,主要用于调试分析util-helper.js - 实现了解析module的url和id的函数util-dom.js - 和浏览器相关的操作 比如添加script , link 节点的操作都在这fn前缀的 阅读全文
posted @ 2012-05-19 16:20 孙海勋 阅读(4572) 评论(0) 推荐(0) 编辑
摘要: 先上几个简单的列子function Obj() { this.value = "对象!"}var value = "global变量";function Fun1() { alert(this.value);}var sObj = { value : "javascript"} ;Fun1.call(this)//global变量Fun1.call(sObj )//javascriptFun1.call(new Obj() )//对象在看定义 它们的作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数方式有所区别: apply( 阅读全文
posted @ 2011-12-01 14:33 孙海勋 阅读(390) 评论(0) 推荐(1) 编辑
摘要: $.extend({ hello : function(){ alert(1); } }); $.fn.extend({ hello : function(){ alert(2); } }) $.hello(); $('#div').hello(); $.extend({net:{}}); console.log($.net); $.extend($.net,{hello : function(){alert(3)}}); $.net.hello(); 有第一个参数 合并到第一个参数,没有第一个参数合并到jquery类上 阅读全文
posted @ 2011-11-20 14:47 孙海勋 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 1工厂模式工厂模式是软件领域一种广为人知的设计模式废话少说直接贴代码 1 function createPerson(name,age,job){ 2 var 0 = {}; 3 o.name = name; 4 o.age = age; 5 o.job = job; 6 o.sayName = function(){ 7 alert(this.name) 8 }; 9 return o;10 }11 var person1 = createPerson("sunhaixun",29,"web");12 var perso... 阅读全文
posted @ 2011-09-07 20:13 孙海勋 阅读(187) 评论(0) 推荐(0) 编辑
摘要: var a = [0,1,2];var b =a ;alert(b);a[0] = 4;alert(b)修改的a会影响到b基本类型保存的是值 所以不会被影像到var a =5;var b= a;a = 6;alert(b) 阅读全文
posted @ 2011-09-07 11:25 孙海勋 阅读(167) 评论(0) 推荐(0) 编辑
摘要: return后面的语句不会在被执行 阅读全文
posted @ 2011-08-22 22:42 孙海勋 阅读(129) 评论(0) 推荐(0) 编辑