私は私の些細なウェブアプリのいくつかのバグを修正し、いくつかの興味深い行に出くわしました。なぜ私がそれらの行を以前のように実装したのか思い出せません。今、私はそれらを「通常の」構文に変更しました、そしてすべては大丈夫です。好奇心からの私の質問:なぜこの方法はまったく機能しなかったのですか?構文エラーが予想されますが、そうではありませんでした。コードは機能しました。
これは古いメソッドの実装です。
ListFillFilter: function(list){
if (OC.Shorty.Debug) OC.Shorty.Debug.log("using 'default' method to filter filled list");
// only makes sense for default OC.Shorty list
var data=new Array();
data['sum_shortys']=$('#desktop #list-of-shortys tbody tr').length;
data['sum_clicks']=0;
$('#desktop #list-of-shortys tbody tr').each(function(){
data['sum_clicks']+=parseInt($(this).attr('data-clicks'),10);
});
OC.Shorty.WUI.Sums.fill.apply(OC.Shorty.Runtime.Context.ListOfShortys,[data]),
// filter list
OC.Shorty.WUI.List.filter.apply(this,[list,'target',list.find('thead tr#toolbar th#target #filter').val()]),
OC.Shorty.WUI.List.filter.apply(this,[list,'title', list.find('thead tr#toolbar th#title #filter').val()]),
OC.Shorty.WUI.List.filter.apply(this,[list,'status',list.find('thead tr#toolbar th#status select :selected').val()])
// sort list
$.when(
OC.Shorty.Action.Preference.get('list-sort-code')
).done(function(pref){
OC.Shorty.WUI.List.sort(list,pref['list-sort-code']);
})
}, // OC.Shorty.Runtime.Context.ListOfShortys.ListAddInsert
中央には、すべて「OC.Shorty.WUI.Sums.fill.apply」で始まる5行が表示されます。これらの行は、セミコロン( ";")ではなくコンマ( "、")で終了します。なぜそれが構文エラーとして表示されなかったのですか?