Error de referencia de la propiedad del objeto Javascript
-
27-09-2019 - |
Pregunta
He construido un objeto en Javascript en el motor de Google Apps Script y cada vez que funciono mi guión me sale un error de referencia diciendo UName no está definido.
Este es el código 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;
Según todas las fuentes que he encontrado, no debería necesitar usar la palabra clave var, y cuando me incluyo eso, arroja otros errores.
¿Qué puede estar pasando?
Gracias
Solución
Bueno, sí, la variable uName
no es definido, en el fragmento informados. Tampoco es dQuery
o execQuery
o dFeilds
(ortografía!). ¿Vienen de otro código que no nos has mostrado?
Hay un propiedad this.uName
, pero las propiedades del objeto son una cosa completamente diferente a las variables en JavaScript. A diferencia de Java, que no comparten un espacio de nombres.
Además, es necesario que los parámetros de URL a codificar. por ejemplo:.
this.qUrl = "http://api.bfbcs.com/api/pc?players="+encodeURIComponent(this.uName)+"&fields="+encodeURIComponent(this.dField);
Otros consejos
No estoy seguro de lo que está tratando de hacer, pero no veo su función de recepción de los parámetros:
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;