문제

I have built an object in Javascript on the Google Apps Script engine and every time I run my script I get a reference error saying uName is not defined.

Here is the relivant code:

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;

According to all sources I have found, I should not need to use the keyword var, and when I do include that, it throws other errors.

What could be going on?

Thanks

도움이 되었습니까?

해결책

Well, yes, the variable uName isn't defined, in the snippet you posted. Neither's dQuery or execQuery, or dFeilds (spelling!). Are they coming from other code you haven't shown us?

There's a property this.uName, but object properties are a completely different thing to variables in JavaScript. Unlike Java, they don't share a namespace.

Also, you need to URL-encode parameters. eg.:

this.qUrl = "http://api.bfbcs.com/api/pc?players="+encodeURIComponent(this.uName)+"&fields="+encodeURIComponent(this.dField);

다른 팁

I am not sure what you are trying to do but I dont see your function receiving those parameters:

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;
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top