- JavaScript程序設計:基礎·PHP·XML
- (美)Elizabeth Drake
- 931字
- 2020-10-30 18:12:37
3.2.2 關于花括號的說明
何時以及哪里使用花括號({})是重要的問題。漏掉花括號可能導致程序崩潰、一點不運行或者以預想不到的結果運行(可能是最糟糕的情況)。當遺漏開始或結束花括號時,由于你的程序將不會運行或者返回錯誤,所以你很可能就會知道這個錯誤。然而,如果遺漏一組需要的花括號,那么直到運行這個程序并且得不到預期結果時,你才能意識到存在這個問題。例3.2將為前面的例子添加一條語句,說明花括號什么時候一定要有和什么時候是可選的。
例3.2 有沒有花括號是不同的 在這個例子中,我們將把另一行代碼加入if語句。部分(a)使用花括號括起兩條輸出語句使之成為當滿足第8行測試條件時要執行的語句部分。
部分(a)
最初的頁面看起來像這樣:
當用戶為溫度錄入15時,輸出看起來像這樣:
但是,如果用戶為溫度錄入45,則不發生事情。
部分(b)不使用花括號,其后果將在輸出中顯示出來。
部分(b)
當用戶為溫度錄入15時,輸出看起來與部分(a)一樣。然而,如果用戶為溫度錄入45時,輸出是:
發生了什么事?花括號應該括起滿足測試條件時要執行的所有語句。在部分(a)中這意味著如果用戶錄入的溫度低于32,那么將執行部分(a)的第10和11行(即兩條document.write()語句)。然而,當除去花括號(如部分(b)所示)時,如果用戶錄入的溫度低于32,那么程序將執行部分(b)的第9行,即第一條document.write()語句。然后,前往執行下一行(即第10行)代碼,即第二條document.write()語句。如果錄入的溫度低于32,那么這個程序執行正確。然而當用戶錄入一個較高溫度時,那么將跳過這條if子句。若沒有花括號,將假定if子句只有一條語句,因此跳過第9行。然而,第10行不是if子句的一部分,而是下一條要執行的語句。這就是為什么不管錄入什么溫度,總是要執行第二條document.write()語句的原因。
如果你不能確定是否要用花括號括起語句,那么你最好寧愿犯過于謹慎的錯誤。在if語句中使用花括號括起一條語句不會導致程序代碼出錯,但是遺漏花括號卻能引起不想要的結果。
3.2節檢查點
3.7 定義if...子句的測試條件。
3.8 測試條件的可能值是什么?
3.9 如果把下列代碼片斷放入一個程序中并運行,而age的值是10,那么將顯示什么?
3.10 修改檢查點3.9的代碼,使得如果孩子不超過16歲,就不顯示任何信息。
3.11 修改檢查點3.9的代碼,使得年齡等于或大于16歲的孩子能夠獲得一張駕駛學習執照。
- 數據科學實戰手冊(R+Python)
- PostgreSQL for Data Architects
- Rust編程:入門、實戰與進階
- Spring技術內幕:深入解析Spring架構與設計
- JavaScript前端開發與實例教程(微課視頻版)
- 你不知道的JavaScript(中卷)
- C程序設計案例教程
- Mastering Python Design Patterns
- Principles of Strategic Data Science
- 深入實踐DDD:以DSL驅動復雜軟件開發
- Python Projects for Kids
- Arduino電子設計實戰指南:零基礎篇
- Continuous Delivery and DevOps:A Quickstart Guide Second Edition
- jQuery Mobile Web Development Essentials(Second Edition)
- 趣學數據結構