HashクラスのEnumerableクラスから継承したメソッド使用サンプル(2006/09/04追記)

HashクラスのEnumerableクラスから継承したメソッドについて、使用サンプルを羅列します。いっぺんには書けないので少しずつ追加していきます。・・・そのうち字数制限に引っかかるかも^^; そのときは別の日に移します。。。

基本的に「Enumerableクラス(2) - Backstage of theater.js」以降の例で、クロージャの引数valueが、pairに変わるだけです。pairオブジェクトは前述したように、keyプロパティとvalueプロパティを持ちます。

allメソッドサンプル

var hash = $H({zero:"零", one:"壱", two:null, three:"参"});
var ret = hash.all(function(pair, index){
  alert(index + ":" + pair.key + ":" + pair.value);
  return pair.value;
});
//"0:zero:零","1:one:壱", "2:two:null"まで表示される。 
alert(ret);//"false"が表示される。
//two:nullがtwo:"弐"なら最後まで表示されて、"true"が表示される。

anyメソッドサンプル

var hash = $H({zero:null, one:false, two:"弐", three:undefined});
var ret = hash.any(function(pair, index){
  alert(index + ":" + pair.key +":" + pair.value);
  return pair.value;
});
//"0:zero:null","1:one:false", "2:two:弐"まで表示される。 
alert(ret);//"true"が表示される。
//two:"弐"がtwo:nullなら最後まで表示されて、"false"が表示される。

collectメソッドサンプル

var hash = $H({zero:"零", one:"壱", two:"弐", three:"参"});
var ret = hash.collect(function(pair, index){
  return index + ":" + pair.key + ":" + pair.value;
});
alert(ret);
//retは配列。"0:zero:零,1:one:壱,2:two:弐,3:three:参"が表示される。