当前位置: 首页 > 图文教程 > 网络编程 > Javascript > js另类写法

Javascript
jQuery.fakeFile插件:网站上传控件
SWFObject:JS代码嵌入Flash媒体资源
30个绝对优秀的JavaScript Web创意应用
30个JavaScript滑动和滚动效果
jQuery教程:超酷的文字变色效果
不提示直接关闭网页窗口的JS代码
解读javascript的计时器(翻译教程)
JavaScript2.0提案
JS计数器函数执行过程解读
JS教程:学习Javascript数组
框架:document.compatMode
Javascript教程:判断函数类型
实现超酷的日期排列的2种方法
delegate软件实现本地调试客户端代码
有名函数表达式全面解析(翻译教程)
JS教程:lightbox源码解析
JavaScript工厂模式的memoizing技术
javascript编程:编程的陷阱(gotcha)
Javascript特效实例10个
Javascript教程:随机数

Javascript 中的 js另类写法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 376 ::
收藏到网摘: n/a

ju 应该是一个定义了各种方法对象 function(b) 的 b 就是 b(a[d], d) 中的参数 a[d] C 是统计方法数量的函数
实现功能估计貌似于这样:
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

代码运行到 test() 后,要调用已经写好的方法 E() 并传递 2 个参数
一个就是所谓对象的 ju 、 另一个就是一个才写的函数
然后把这两个参数传递到了 E() 方法,当然,E()方法已经在等参数了
当他等到了许久不见的参数的时候会怎么做呢...(待续)

续简介:
上回说到 E() 方法见到了许久不见的参数 ju 和 一个函数
当然 E() 做为这两个参数的传递执行方法,就叫了两个小弟(变量 a, b)
来把他们的一切都引用了,此时
a = ju
b = function(b)
{
b(a);
if(a == "gyyy.")
{
b("G");
}
}
然后又 var c = C(a); 让 小弟(变量c) 得到了 a ,也就是 a 引用的 ju 长度
然后照着这个长度执行 小弟b 引用的那个传递到 E() 方法的函数
并传递 2 个参数给那个函数
一个就是 a[d],另一个就是d
然后呢,开始执行小弟 b ,现在这个小弟 b 就是一开始传递到 E() 方法的函数
而那个传递到 E() 方法中的函数接受一个参数 如右所示: function(b) { ... }
而现在执行的函数中的 b 是从E()方法传递过来的 a[d]

也就是说呢:您出错的地方就是在 传递的a[d]上吧, 执行 b(a)的时候,a是由 test()一开始传递的
而执行的 b(a) 这个b() 就是从下面个 E 传递上来的 a[d]
也就是说 a[d] 其实是一个方法
我猜想 ju 应该是一个包含许多方法的数组
原理就像这个一样吧,很麻烦的东西,只是为了得到 a 的访问权限
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]