prototype.jsソースコード分析

Enumerable => collect

  • eachメソッドと_eachメソッドを経由する箇所をまとめて書くと以下のようになる。
  • まだまとめ切れていない感じもあるが、そういった経過を載せる方が情報としては価値があるケースもあると思います。
<script>
Array.prototype.collect = function(){
	var results = [];
	for(var i=0; i<this.length; i++){
		(function(value){
			(function(value){
				results.push((function(e){	return e + 1;})(value))
			})(value);
		})(this[i]);
	}
	return results;
};
var array = [1, 2];
alert(array.collect());
</script>