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

¿Fue útil?

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;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top