Array.prototype.last = function() { if(this.length !=0) return this[this.length-1]; }
myarray = new Array(1,2,3);
for(var i in myarray){
alert(i+'='+myarray[i]);
}
上記のコードを実行すると、それが正しく、各ループに警告し、その後終了時に別のアラートがArray.prototype.last法源とポップアップ。JSプロトタイプ戻りプロトタイプコード
これは私がプロトタイプメソッドを定義するたびに発生し、私はその理由を知りません!
は、だから私はのためのアラートを取得:0 = 1,1 = 2,2 = 3、その後に1つ:
last=function() {
if (this.length != 0) {
return this[this.length - 1];
}
}
ああ、よく私はあなたが知っているとき、それは明らかだが、私は(VAR I = 0の場合よりも書き込みに速くする(配列のVAR)を見つけると思います。私
crankshaft
@Crankshaft:この問題を回避するには、jQuery $ .each()、つまり$ .each(myarray、function(index、value){alert(value);})を使用できます。 – dhinesh