javascript イテレーター

イテレーターは、基本オブジェクトにnext()メソッドを実装し、イテレーターオブジェクトを返してあげるようにしてあげれば実装できる。これだけだとイテレートできないので、これを基本にいろいろ追加してあげる。

イテレーターとProxyとシンボルを使えば、以下のような感じでphp likeなhashを実装できそうだが、、、ちょっとめんどうそう。

var map={}
var index = Symbol();

map.prototype.next = function(){
  イテレート処理
}

var orderedMap = new Proxy(map,...){
}