javascript変数を定義しましたが、定義されていません。JavaScript変数は条件外では未定義です
variable = "";
if(somecondition){
variable=myString.length;
}
alert(variable);
ここで、変数は未定義を返します。私がif条件の中に警告を残しておくと、私は値を得ることができますが、if条件の外に警告を保持すれば動作しません。 VARを使用して
javascript変数を定義しましたが、定義されていません。JavaScript変数は条件外では未定義です
variable = "";
if(somecondition){
variable=myString.length;
}
alert(variable);
ここで、変数は未定義を返します。私がif条件の中に警告を残しておくと、私は値を得ることができますが、if条件の外に警告を保持すれば動作しません。 VARを使用して
はそれを行います。
var variable;
あなたの変数を宣言して定義する必要があります。
var variable = "";
if(somecondition) {
variable = myString.length;
}
alert(variable);
すべてのコードが同じスコープにあるので、 'var'は不要です。 –
^グローバル変数の作成を避けるには、変数に 'var'(または他の宣言キーワード)を指定してください。 –
var variable = '';
if (true) {
variable = 'Yes'
}
alert(variable);
これはYesとアラートが表示されます。
は、だからあなたの場合にはmyString.length;
はおそらく未定義
しかし、文字列に問題がないことを意味するif条件の中に警告すると、私は声を見ることができます。 – SRM
if条件の中でどの値を見ることができますか?.lengthの値は?それは何ですか? –
いいえ、同じ方法で文字列を初期化しました。私は条件内の値を見ることができます – SRM
私たちはjsfiddleまたは実行可能なコードビンを共有します –
あなたの状態が有効でないか、あなたのmystring変数が長さのプロパティを持たないかもしれません –
で
ルックは、あなたのmyString
はlength
というプロパティを持っていないので、あなたはundefined
を得ています。 通常、String
,array
にはlength
のプロパティがありますが、オブジェクトにはそのプロパティがありません。
あなたは間違ったプロパティを呼び出すか、誤ったデータ型でそれを呼び出すか、あなたは1を自分で定義する必要がされている次のいずれかの変数が関数内で未定義でない場合、それはまだに等しいので、P
それは私が言ったことです! –
、それはです初期値、 ""(Empty String)。
私が賭けているのは、実際にはmyStringは文字列ではなく数字です。次の方法を試して、まだ問題があるかどうかを確認してください。
variable = "";
if(somecondition){
variable=myString.toString().length;
}
alert(variable);
var variable = '""; –
宣言var variable = ""; – Ram
あなたはそれにvarを追加することができませんでした。あなたはmyStringを正しく定義しました... varを追加してみてください。 – Geeky