プロジェクト

全般

プロフィール

Bug(バグ) #3530

Yuya Watanabe10年以上前に更新

h3. 概要

配列を逆順にする際に配列外を参照している

<pre>
web/js/timeline-loader.api.js
86 var reverseJson = [];
87 for (var i = 0; i <= json.data.length; i++)
88 {
89 reverseJson[i] = json.data[json.data.length - i];
90 }
91 $('#timelineCommentTemplate').tmpl(reverseJson).prependTo(commentlist);
</pre>

reverseJson を出力してみると下記のようになる.
<pre>
[undefined, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object]
</pre>

jquery.tmpl 内では false と評価されるようなものは追加されていない様子なので表面上問題は発生していない.

h3. 備考

同じファイルの別のところでは reverse() を用いているようだけれども.

<pre>
web/js/timeline-loader.api.js
327 $('#timelineCommentTemplate').tmpl(json.data[i].replies.reverse()).prependTo('#commentlist-' +json.data[i].id);
</pre>

戻る