2012-06-20 33 views
2

我有一個情況,我檢查一個變量是否是未定義的。在某些情況下,我想再次變成undefined變量,以便返回undefined?這會被認爲是不好的做法嗎?如何將變量/迴轉變量清空回undefined?

:D/code sample!

if (loc1 == undefined){ 
    loc1 = loc.title 
    } 
else if(loc2 == undefined){ 
    loc2 = loc.title 
} 
else{ 
//here I want loc1 and loc2 to turn undefined again! 
} 
+0

什麼? ... 什麼? – Ryan

+0

只需將變量設置爲'undefined'即可。 – 2012-06-20 23:24:30

+2

@amnotiam:Ferpectly。 (另外,你所有推薦'delete'的人都應該刪掉你的答案,而不是讓他們在那裏積累下來。) – Ryan

回答

3

你可以只是這樣做:

var test = 1; 
test = undefined; 
+0

標識符undefined可能已經被分配了一個值除了「未定義」(罕見但可能)。爲了保證未定義的值,'var test = void 0;'可能會更好。很難看出,這比將其設置爲「空」或「假」或其他特定值更好。 – RobG

+1

@RobG:我喜歡你的建議,使用'void'操作符,但我建議如果有任何關於環境純度的問題,應該直接測試,如果損壞應該糾正。 – 2012-06-21 00:28:51

+2

我認爲如果'undefined'被重新分配,你會在別處遇到更大的問題。所以這可以安全地忽略。 –