私はこの問題を見て:変数を未定義と比較すると、「変数未定義」エラーが表示されるのはなぜですか?
How to determine if variable is 'undefined' or 'null'?
しかし、それは助けにはなりませんでした。
私は次のコードを持っている:
if (_modeID != 8 && _modeID != 9)
// do something
_modeID
はすべて一緒に別のファイルに定義され、値が割り当てられます。
何らかの理由でvar _modeID = someIntVal;
が実行されないバグが発生しました。したがって、上記のif
の文が実行されると、_modeID
はまったくありません。
私はそれがif (_modeID === null || _modeID === undefined || (_modeID != 8 && _modeID != 9)
なるように拡張が、これはまだ、次のエラーがスローされます。
ReferenceError - Java Script Error : '_modeID' is undefined
Iは、第1または第2の条件は、この場合にはtrueに評価さどうやらないだろうどちらかということを望んでいました。誰かが私が間違っていることについていくつかの光を当てることができますか?
は、2つのスニペットが「完全」なファイルであると仮定して単純にif (_modeID === undefined) ...
と同じではありませんか?
は、人ではなく変数自体の変数の型をチェックしてください[ '使用typeof'](https://stackoverflow.com/questions/5113374/javascript-check-もしあなたが本当に '_modeID'が定義されているかどうかを知りたいのであれば、あなたが求めるべき質問は**なぜ**それを定義する他の文が実行されていないか、あなたは実際にその問題を診断するのに十分なコードを投稿していません。 – meagar
_modeIDが定義されているこの個別のファイルについて詳しく説明できますか?定義を表示できますか?私はそれが他のどこかの機能範囲にあるかもしれないと思う。 – sma
'_modeID'は.cshtml Razor Viewファイルに' var _modeID = @ Model.IntMode'のように定義されています。我々は、(この値を作成/設定する)レポート、またはレポートを見つけるための検索ページを一覧表示するページを持っています。検索ページを使用している場合は、レポートを表示するページではなくレポートに直接表示されるため、その変数は作成されません。正直なところ、それは本当に問題ではない。変数は文字通り私の質問のその単一のチェックでのみ使用されています。この値は他の場所では使用されません。 – sab669