JavaScriptオブジェクトのプロパティの参照エラー
-
27-09-2019 - |
質問
Google Apps Script EngineにJavaScriptにオブジェクトを作成しました。スクリプトを実行するたびに、Unameが定義されていないという参照エラーが表示されます。
これが信頼できるコードです:
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;
私が見つけたすべての情報源によると、キーワードvarを使用する必要はありません。それを含めると、他のエラーがスローされます。
何が起こっているのでしょうか?
ありがとう
解決
まあ、はい、変数 uName
そうではありません 定義された、あなたが投稿したスニペットで。どちらも dQuery
また execQuery
, 、 また dFeilds
(つづり!)。彼らはあなたが私たちに見せていない他のコードから来ていますか?
あります 財産 this.uName
, 、しかし、オブジェクトプロパティは、JavaScriptの変数とはまったく異なるものです。 Javaとは異なり、彼らは名前空間を共有していません。
また、URLエンコードパラメーターも必要です。例えば。:
this.qUrl = "http://api.bfbcs.com/api/pc?players="+encodeURIComponent(this.uName)+"&fields="+encodeURIComponent(this.dField);
他のヒント
私はあなたが何をしようとしているのかわかりませんが、あなたの関数がそれらのパラメーターを受け取るのを見ていません:
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;
所属していません StackOverflow