Errore di riferimento per la proprietà di Javascript Object
-
27-09-2019 - |
Domanda
Ho costruito un oggetto in Javascript sul motore di Google Apps Script e ogni volta che ho eseguito il mio script ricevo un errore di riferimento dicendo uname non è definito.
Ecco il codice relivant:
function DataSet()
{
this.uName = "";
this.dField = "";
this.qUrl = "http://api.bfbcs.com/api/pc?players="+uName+"&fields="+dFeilds;
this.data = "";
this.dQuery = dQuery;
this.execQuery = execQuery;
Secondo tutte le fonti che ho trovato, non dovrei avere bisogno di utilizzare la parola chiave var, e quando lo faccio includo che, si getta altri errori.
Che cosa potrebbe essere in corso?
Grazie
Soluzione
Be ', sì, il uName
variabile non è definito, nel frammento che avete inviato. Né di dQuery
o execQuery
, o dFeilds
(ortografia!). Stanno venendo altro codice che non ci avete mostrato?
C'è un proprietà this.uName
, ma le proprietà degli oggetti sono una cosa completamente diversa a variabili in JavaScript. A differenza di Java, non condividono uno spazio dei nomi.
Inoltre, è necessario ai parametri di codifica URL. ad esempio:.
this.qUrl = "http://api.bfbcs.com/api/pc?players="+encodeURIComponent(this.uName)+"&fields="+encodeURIComponent(this.dField);
Altri suggerimenti
Non sono sicuro di quello che si sta cercando di fare, ma non vedo la vostra funzione di ricezione quei parametri:
function DataSet(uName,dFeilds,dQuery,execQuery)
{
this.uName = "";
this.dFeild = "";
this.qUrl = "http://api.bfbcs.com/api/pc?players="+uName+"&fields="+dFeilds;
this.data = "";
this.dQuery = dQuery;
this.execQuery = execQuery;