Ruby's Louvre

每天学习一点点算法

导航

上一页 1 ··· 109 110 111 112 113 114 115 116 117 ··· 125 下一页

2009年11月9日 #

javascript的currying函数

摘要: curring的概念将函数式编程的概念和默认参数以及可变参数结合在一起.一个带n个参数,curried的函数固化第一个参数为固定参数,并返回另一个带n-1个参数的函数对象,分别类似于LISP的原始函数car和cdr的行为。currying能泛化为偏函数应用(partial function application, PFA),p 这种函数将任意数量(顺序)的参数的函数转化为另一个带剩余参数的函数对象。最早期的curry函数有点多态的意味,就是根据函数参数在内部选用分支://http://www.openlaszlo.org/pipermail/laszlo-user/2005-March/00 阅读全文

posted @ 2009-11-09 11:28 司徒正美 阅读(6732) 评论(17) 推荐(7) 编辑

2009年11月8日 #

字符串的乘法

摘要: 在ruby中我们可以通过"*"操作符去字符串进行倍增,如"ruby"*2则返回"rubyruby"。在javascript中,字符串只能用加号,嘛,乘法也加法演变过来的。我们可以搞一个试试。方法一 String.prototype.times = function(n) {//IE6 530-640 FF3 400~550 IE8 840 ~1110 chrome 600~1000 return (new Array(n+1)).join(this); }; <!doctype html><html dir=&quo 阅读全文

posted @ 2009-11-08 14:14 司徒正美 阅读(4835) 评论(12) 推荐(3) 编辑

2009年11月7日 #

javascript框架之继承机制2

摘要: 我们来模仿一下最OO的mootools的继承机制。它的类都有一个叫做initialize构造方法,这与Java的类都有一个与类名同名的构造方法一样的道理。只不过,这些叫initialize或init都是借鉴自Prototype,而Prototype那帮人是Ruby出身。为了区别mootools那种污染原生方法的做法,我把类的构造器命名为variant,并且禁止查看构造方法(像浏览器禁止查看原生对象... 阅读全文

posted @ 2009-11-07 20:07 司徒正美 阅读(2395) 评论(3) 推荐(2) 编辑

2009年11月6日 #

获取函数名

摘要: 如果当前函数是有名函数,则返回其名字,如果是匿名函数则返回被赋值的函数变量名,如果是闭包中匿名函数则返回“anonymous”。使用:在要调查的函数内部执行此函数,传入一个参数,为arguments.callee。 getFnName by 司徒正美 运行代码 阅读全文

posted @ 2009-11-06 17:24 司徒正美 阅读(5546) 评论(11) 推荐(3) 编辑

javascript框架之继承机制

摘要: 大一点的框架都有这个东西。Prototype原来的继承机制非常弱,为了与mootools对抗也强化了这一方面。嘛,要用原型继承来模仿类继承,都基本存在一个克隆函数。把父类的原型属性复制到子类上去。理念的东西暂时这么多,动手实践一下最实际。我们设计一个数组类,拥有原生数组的能力与新扩展的能力。 var isNumber = function(n){ return typeof n === 'numb... 阅读全文

posted @ 2009-11-06 09:11 司徒正美 阅读(3530) 评论(8) 推荐(5) 编辑

2009年11月5日 #

javascript框架之全局变量

摘要: 纵观各大类库的实现,一开始基本都是定义一个全局变量,然后对它进行扩展。如Prototype.js的Prototype,mootools的Native,Base2的Base,Ext的Ext,jQuery的jQuery,YUI的YUI,dojo的dojo,MochiKit的MochiKit等等。从全局变量的污染程度来看,分为两大类,Prototype,mootools与Base2归一类。Prototy... 阅读全文

posted @ 2009-11-05 15:56 司徒正美 阅读(5090) 评论(14) 推荐(4) 编辑

2009年11月4日 #

(转)写给想学Javascript朋友的一点经验之谈(含教材选取指导)

摘要: 逛论坛时看到有朋友问,是否有专门教Javascript的学校,这里想想把自己的一点建议和自己3年来的前端Javascript开发的经验跟大家分享下,也给出几本个人认为不错的书来做为大家学习的参考资料。当然只是个人的经验,有什么不对的也请高手见谅和指正。 关于到培训学校学习的忠告:别说现在没有这样的学校,就是有专门的学校也不要去,因为不会有好的老师的。不要浪费你自己(很可能是你父母)的钱和时间。趁早... 阅读全文

posted @ 2009-11-04 11:56 司徒正美 阅读(3048) 评论(9) 推荐(7) 编辑

2009年10月31日 #

(转)Firefox 3.5中的DOM遍历

摘要: 原译文Firefox 3.5中包括了对两个W3C DOM遍历规范的支持。第一个是元素遍历API,用来使得遍历元素变得简单;第二个是NodeIterator(节点迭代器)接口,用来使得根据类型查找节点变得简单。元素遍历API元素遍历API的目的是使得开发人员可以很容易的遍历DOM元素,而不需要担心中间的文本节点、注释节点等。开发人员因为这个吃了很多苦头,比如document.documentElem... 阅读全文

posted @ 2009-10-31 18:25 司徒正美 阅读(996) 评论(1) 推荐(1) 编辑

javascript 动态解析脚本

摘要: 一般而言,如果脚本很长,我们把它们放到一个JS文件中,然后生成一个script元素并把它加入DOM树,把src设置为JS文件的地址即可。但对于很自短的脚本,如果我们又不想用new Function与eval呢?这里还有一办法,利用script元素的一个少为人知的属性text,非标准属性,但所有主流浏览器都支持。有点像innerHTML,但innerHTML只能把字符串变成各种节点,但不能解析脚本。... 阅读全文

posted @ 2009-10-31 13:46 司徒正美 阅读(3733) 评论(3) 推荐(6) 编辑

2009年10月30日 #

惰性函数

摘要: 到外国网址乱逛发现的,一种非常高效的写法,用于存储需要经过非常复杂计算得出的变量。原文的例子与我的有点出入。经典的写法,利用上层作用域的变量储存它。缺点如下,好容易暴露成全局变量,造成管理混乱,并且每次执行都要判断分支条件if(t)是否返回true。 <!doctype html><title>惰性函数 by 司徒正美</title><meta chars... 阅读全文

posted @ 2009-10-30 17:45 司徒正美 阅读(4826) 评论(15) 推荐(7) 编辑

上一页 1 ··· 109 110 111 112 113 114 115 116 117 ··· 125 下一页