JSLint besteht darauf, dass mit dieser Nutzung .call etwas falsch gibt es:JSLint besteht darauf, dass "Unexpected" nennen"
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);
}
falsch ist. Naja, Unerwartetes sowieso. Ich kann einfach nicht für das Leben von mir herausfinden warum, stimmt etwas mit dem Code nicht? Es scheint zu funktionieren, aber ich mache mir Sorgen über unerwartetes Verhalten.
Wenn '_constructTable' bereits auf der Instanz verfügbar ist (vermutlich über' GridView.prototype'), warum brauchen Sie '.call' zu benutzen? Kannst du nicht 'this._constructTable (tableArray);'? –
@James Allardice: Ich nicht, und ja, ich kann. Ich experimentiere gerade mit "Anruf". Ist JSLint clever genug, um zu sehen, dass der Code dumm ist? – Fenixp
Es scheint ja zu sein. Wenn Sie 'this.' vor' _constructTable' entfernen oder 'this' in einen anderen' 'call''ändern, warnt JSLint nicht mehr. –