6
JSLint .call bu kullanımı ile yanlış bir şey olduğunda ısrar:JSLint ısrar ediyor " 'ara' Beklenmeyen"
function GridView(tableArray, tableId, multiselect) {
"use strict";
if (multiselect == undefined) {
this.multiselect = false;
} else {
this.multiselect = multiselect;
}
this.tableID = tableId;
this.propertiesArr = [];
this.tableHTML = undefined;
this.oTable = undefined;
this._constructTable.call(this, tableArray);
}
yanlış mı. Her neyse, beklenmedik. Sadece hayatımın nedenini anlayamıyorum, neden kodda bir sorun var? Çalışıyor gibi görünüyor, ama beklenmedik davranışlardan endişeleniyorum. - Eğer olurdu aynı bağlam olacağını this
bağlamında _constructTable
yöntemi, aradığınız
this._constructTable.call(this, tableArray);
Bu yapı büyük ölçüde anlamsız gibi görünen:
, neden kullanmam gerekiyor '.call': JSLint tam olarak bekliyor? Sadece bu._constructTable (tableArray) yapamazsınız ''? –
@James Allardice: Yapmıyorum ve evet yapabilirim. Çoğunlukla şu anda 'çağrı' ile deney yapıyorum. Yani JSLint, kodun aptal olduğunu görmek için yeterince zeki mi? – Fenixp
Evet, öyle görünüyor. 'ThisconstructTable' öğesinden 'this.' öğesini kaldırırsanız veya '.call' içindeki herhangi bir şeye 'this' değerini değiştirirseniz, JSLint artık uyarı vermez. –