我看了看這個問題:爲什麼在比較變量與未定義時會出現「變量未定義」錯誤?
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
我希望第一個或第二個條件將評估爲true,在這種情況下,但顯然不是。任何人都可以闡明我做錯了什麼?
是var _modeID = undefined; if (_modeID === undefined) ...
不是簡單的if (_modeID === undefined) ...
假設這兩個片段是「完整的」文件?
[使用'typeof'(https://stackoverflow.com/questions/5113374/javascript-check- if-variable-exists-is-defined-initialized)如果你確實想知道是否定義了_modeID,但你應該問的真正問題是**爲什麼定義它的其他語句沒有運行,而且你還沒有發佈足夠的代碼來診斷這個問題。 – meagar
你能談談更多關於這個單獨的文件,其中_modeID被定義?你能展示它的定義嗎?我懷疑它可能在其他地方的功能範圍內。 – sma
'_modeID'在.cshtml Razor視圖文件中定義,如下所示:'var _modeID = @ Model.IntMode'。我們有一個列出報告(創建/設置這個值)的頁面,或者一個查找報告的搜索頁面。如果他們使用「搜索」頁面,則該變量不會被創建,因爲它直接將它們帶到報告中,而不是列出報告的頁面。說實話,這真的不是問題;這個變量實際上只用於我的問題中的單個檢查。該值不用於其他任何地方。 – sab669