摘要:引看到過一篇文章說的使用,永遠應該放在你的控制范圍之內,而不應該防范未知的錯誤。語句測試代碼塊的錯誤。語句在和之后無論有無異常都會執行。若是我們要使的判斷執行下去,則需要寫成而則不需要考慮這些。
try catch throw finally
引:看到過一篇文章說“try catch的使用,永遠應該放在你的控制范圍之內,而不應該防范未知的錯誤。如果讓用戶先發現你根本沒預料到的錯誤,而不是你先發現錯誤,你是失職的。”
try 語句測試代碼塊的錯誤。
catch 語句處理錯誤。
throw 語句創建自定義錯誤。
finally 語句在 try 和 catch 之后無論有無異常都會執行。
首先看一個無異常情況
再來一個自定義拋出異常
不難發現如果異常拋出之后,拋出那段之后的代碼是不會執行了
程序報錯拋出異常
為什么我們不用if呢?
還是上圖吧,有圖有真相
obj.aa.bb.cc 本身已經是undefined 再往下找自然是沒有dd的,此時如果是if就會報錯并中斷程序。而try catch不會。 若是我們要使if的判斷執行下去,則需要寫成if(obj && obj.aa && obj.aa.bb & &obj.aa.bb.dd),而try cacth則不需要考慮這些。&& 和 ||
這倆的含義不用解釋了吧,且和或,主要是講用&& 和 || 來節省if else 的寫法
if(a === 1){ conosle.log("a=1") }
可以寫為 a===1 && conosle.log("a=1")
或:
if(a===1 || a === 2){ console.log("a="+a) }
可以寫為 (a===1 || a===2) && console.log("a="+a)
賦值也是可以的 a===1 && (b=1) 、(a===1 ||a===2) && (b=1)
我們會經常發現一個賦值 a = b ||"" b 若為真,a=b ,否則 a = ""
switch 完勝
對swtch的簡寫
var b = []; switch(area){ case 2: b = ["重慶市", "福建省", "山東省", "內蒙古省", "上海市省"] break; case 3: b = ["北京市", "西北省", "甘肅省", "云南省", "寧夏省", "西藏省", "青海省",] break; case 4: b = ["四川省", "遼寧省", "黑龍江省", "吉林省", "河北省", "山西省"] break; 省略...... }
明明都是給b賦值,為什么不能簡單點呢?
答案當然是可以了!我是江小白,世界很簡單!!
用對象的方式組裝一下: let object = { 1: ["重慶市", "福建省", "山東省", "內蒙古省", "上海市省"], 2: ["北京市", "西北省", "甘肅省", "云南省", "寧夏省", "西藏省", "青海省",], 3: ["四川省", "遼寧省", "黑龍江省", "吉林省", "河北省", "山西省"], 4: ["河南省", "江蘇省", "安徽省", "廣西省"], 5: ["新疆省", "江西省", "浙江省"], 6: ["陜西省", "遼寧省", "湖南省"], 7: ["廣東省", "貴州省", "湖北省", "河南省", "海南省", "天津市"] } b = object[area] 如果你是規律的1234567,那么你還可以用數組哦 let arr = [ ["重慶市", "福建省", "山東省", "內蒙古省", "上海市省"], ["北京市", "西北省", "甘肅省", "云南省", "寧夏省", "西藏省", "青海省",], ["四川省", "遼寧省", "黑龍江省", "吉林省", "河北省", "山西省"], ["河南省", "江蘇省", "安徽省", "廣西省"], ["新疆省", "江西省", "浙江省"], ["陜西省", "遼寧省", "湖南省"], ["廣東省", "貴州省", "湖北省", "河南省", "海南省", "天津市"] ] b = arr[area]
是不是感覺少寫了好多代碼呢,你值得擁有哦~~
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/53491.html
摘要:引看到過一篇文章說的使用,永遠應該放在你的控制范圍之內,而不應該防范未知的錯誤。語句測試代碼塊的錯誤。語句在和之后無論有無異常都會執行。若是我們要使的判斷執行下去,則需要寫成而則不需要考慮這些。 try catch throw finally 引:看到過一篇文章說try catch的使用,永遠應該放在你的控制范圍之內,而不應該防范未知的錯誤。如果讓用戶先發現你根本沒預料到的錯誤,而不是...
摘要:這幾天,遇到一些事,對于我們程序員的核心競爭力有了一些小想法各種各樣的技術加持更長久的工作經驗還是各種度娘解決不了的技術不知道,上述這些,也都很重要,不過我自己卻想到,技術的迭代在時代太快了,一個人很難僅憑一種技術,很難一直保持下去。 這幾天,遇到一些事,對于我們程序員的核心競爭力有了一些小想法!各種各樣的技術加持?更長久的工作經驗?還是各種度娘解決不了的技術?不知道,上述這些,也都很...
摘要:生產環境可以借助集合來實現灰度發布代碼請參考微服務權限框架的灰度發布功能,已經全部開源關于基于開發基于前后分離的開發平臺,支持賬號短信等多種登錄,提供配套視頻開發教程。 showImg(https://segmentfault.com/img/remote/1460000016809362); 分析下目前遇到的痛點 你在開發工作的是否遇到這個問題,微服務模塊劃分過細,基礎模塊依賴的比較...
摘要:生產環境可以借助集合來實現灰度發布代碼請參考微服務權限框架的灰度發布功能,已經全部開源關于基于開發基于前后分離的開發平臺,支持賬號短信等多種登錄,提供配套視頻開發教程。 showImg(https://segmentfault.com/img/remote/1460000016809362); 分析下目前遇到的痛點 你在開發工作的是否遇到這個問題,微服務模塊劃分過細,基礎模塊依賴的比較...
閱讀 2255·2023-04-26 02:14
閱讀 2926·2021-09-30 09:46
閱讀 2100·2021-09-24 09:48
閱讀 951·2021-09-24 09:47
閱讀 3252·2019-08-30 15:44
閱讀 1878·2019-08-30 15:44
閱讀 3278·2019-08-30 14:18
閱讀 1948·2019-08-30 12:58