我Microsoft JScript中一個變量設置爲另一個變量是未定義的,當未定義的錯誤即微軟的JScript拋出「變量」是設定變量未定義
變種有效= Page_IsValid;
JScript中引發以下錯誤
微軟JScript運行時錯誤:「Page_IsValid」未定義
不知怎的,這並不讓我最正確的。它不應該忽略這個任務 - 除了將它分配給變量之外,我不會對Page_IsValid做任何事情。
我Microsoft JScript中一個變量設置爲另一個變量是未定義的,當未定義的錯誤即微軟的JScript拋出「變量」是設定變量未定義
變種有效= Page_IsValid;
JScript中引發以下錯誤
微軟JScript運行時錯誤:「Page_IsValid」未定義
不知怎的,這並不讓我最正確的。它不應該忽略這個任務 - 除了將它分配給變量之外,我不會對Page_IsValid做任何事情。
這是正確的行爲。只要您的第一個引用是一個賦值(例如,firstReference = 'foo';
)或typeof
表達式,就可以引用不包含var
關鍵字的新變量。這是因爲你仍然聲明變量,但是作爲一個全局變量。就你而言,你試圖在作業的右側使用Page_IsValid
,但解釋者不知道該如何處理它,因爲它在任何地方都沒有被挖掘過。
如果你不確定是否會Page_IsValid
已申報或沒有,你可以做這樣的事情:
// kind of funky to set the value to undefined, but this ensures
// that Page_IsValid has been properly "declared"
if (typeof Page_IsValid === 'undefined') { Page_IsValid = undefined; }
這是預期的行爲,你試圖分配的東西不存在。 您可以測試的Page_IsValid
的狀態,並把它處理neccesary:
var valid = (typeof Page_IsValid !== 'undefined') ? Page_IsValid : <default value>;
你能告訴我們你的腳本。我似乎沒有這個問題。它可能是'Page_IsValid'超出了範圍?編輯:啊..我看到當你說「變量是未定義的」你的意思是「未定義的變量」,而不是「變量的值是未定義的」。哇。我的閱讀理解今天很怪異。 – ZenMaster