2013-03-12 81 views
4

我的目標是:最佳方式「退出」

if(error){ 
    window.location.href = "error.htm"; 
    //end of every thing 
} 

更重要的是,return false難道不幫助,因爲有可能是函數中的功能。 我目前的解決方案是throw,但我覺得不舒服

更好的主意||解決方案

+2

見http://stackoverflow.com/questions/550574/how-to-terminate-the-script-in-javascript也http://stackoverflow.com/a/1361966/920173 – TheBronx 2013-03-12 09:09:10

+0

它看起來像每個人都使用'扔' – rhapsodyn 2013-03-12 11:02:32

回答

0

如果你不想離開一個功能,我想你會試圖打破一個循環。

然後你可以使用break

function testBreak(x) { 
   var i = 0; 
  
   while (i < 6) { 
      if (i == 3) { 
         break; 
      } 
      i += 1; 
   } 
   return i * x; 
} 

(MDN例子)

如果你想從多個函數退出,槽數堆棧通話水平,那麼唯一的「有效「的用例就是」異常「的錯誤,你可以用try/catch/throw來處理。但濫用異常會導致難以維護代碼並經常隱藏錯誤。如果你需要它,你的代碼可能不會真的看起來像javascript一樣。