4.1 循环 Ruby 样式

优质
小牛编辑
139浏览
2023-12-01

在标准的javascript中,如果你想把一个array中的所有elements显示出来,你可以像下面代码这样写得很好:

<script>
function showList(){
var simpsons = ['Homer', 'Marge', 'Lisa', 'Bart', 'Meg'];
            for(i=0;i<simpsons.length;i++){
alert(simpsons[i]);
}
}
</script>
<input type="button" value="Show List" onclick="showList();" > 

使用我们新的最好的朋友,prototype.js,我们可以把它生写成这样

function showList(){
var simpsons = ['Homer', 'Marge', 'Lisa', 'Bart', 'Meg'];
            simpsons.each( function(familyMember){
alert(familyMember);
});
} 

你可能会想“非常奇怪的方式...相对旧的,这种语法太怪异了”。哦,在上面的例子,确实什么也没有,在这个简单得要死例子中,也没有改变太多啊,尽管如此,请继续读下去。

在继续下面内容之前,你注意到那个被做为一个参数传递给each函数的函数?我们把它理解成迭代器函数。