溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript的判斷結構有哪些

發布時間:2021-11-08 15:08:54 來源:億速云 閱讀:154 作者:iii 欄目:web開發
# JavaScript的判斷結構有哪些

JavaScript作為一門靈活的編程語言,提供了多種條件判斷結構來控制程序流程。本文將詳細介紹JavaScript中常見的判斷結構及其使用場景。

## 1. if語句

### 基本語法
```javascript
if (condition) {
  // 當條件為真時執行的代碼
}

特點

  • 最簡單的條件判斷結構
  • 條件可以是任何返回布爾值的表達式
  • 當條件為true時執行代碼塊

示例

let age = 18;
if (age >= 18) {
  console.log("已成年");
}

2. if…else語句

基本語法

if (condition) {
  // 條件為真時執行
} else {
  // 條件為假時執行
}

特點

  • 二選一的分支結構
  • 必須執行其中一個代碼塊

示例

let score = 85;
if (score >= 60) {
  console.log("及格");
} else {
  console.log("不及格");
}

3. if…else if…else語句

基本語法

if (condition1) {
  // 條件1為真時執行
} else if (condition2) {
  // 條件2為真時執行
} else {
  // 所有條件為假時執行
}

特點

  • 多條件分支結構
  • 可以有多個else if
  • 按順序檢查條件,執行第一個為真的代碼塊

示例

let grade = 82;
if (grade >= 90) {
  console.log("A");
} else if (grade >= 80) {
  console.log("B");
} else if (grade >= 70) {
  console.log("C");
} else {
  console.log("D");
}

4. 三元運算符

基本語法

condition ? exprIfTrue : exprIfFalse

特點

  • 簡潔的條件表達式
  • 適合簡單的二選一場景
  • 可以嵌套使用(但不推薦過度嵌套)

示例

let isMember = true;
let fee = isMember ? 10 : 20;
console.log(fee); // 輸出10

5. switch語句

基本語法

switch (expression) {
  case value1:
    // 代碼塊1
    break;
  case value2:
    // 代碼塊2
    break;
  default:
    // 默認代碼塊
}

特點

  • 基于表達式值的多分支結構
  • 使用break防止穿透
  • default處理未匹配情況
  • 適合離散值比較

示例

let day = 3;
switch (day) {
  case 1:
    console.log("星期一");
    break;
  case 2:
    console.log("星期二");
    break;
  // ...其他case
  default:
    console.log("無效的日期");
}

6. 邏輯運算符作為判斷

常見用法

  • &&(邏輯與):條件短路
  • ||(邏輯或):默認值設置

示例

// && 示例
let user = { name: "Alice" };
user && console.log(user.name); // Alice

// || 示例
let config = null;
let defaultConfig = { theme: "dark" };
let currentConfig = config || defaultConfig;

7. 可選鏈操作符(?.)

特點

  • ES2020新增特性
  • 安全訪問嵌套屬性
  • 遇到nullundefined時返回undefined

示例

let user = { profile: { name: "Bob" } };
console.log(user?.profile?.name); // Bob
console.log(user?.address?.city); // undefined

8. 空值合并運算符(??)

特點

  • ES2020新增特性
  • 僅在左側為nullundefined時返回右側值
  • ||不同,不會對假值(如0、”“)生效

示例

let count = 0;
console.log(count ?? 10); // 0
console.log(count || 10); // 10

最佳實踐建議

  1. 簡單條件:優先使用if或三元運算符
  2. 多分支離散值:使用switch語句
  3. 對象屬性訪問:使用可選鏈操作符避免報錯
  4. 默認值設置:空值合并運算符優于邏輯或
  5. 代碼可讀性:避免過度嵌套的條件判斷

總結

JavaScript提供了豐富的判斷結構來滿足不同場景的需求。從基礎的if/else到現代的?.??運算符,開發者可以根據具體情況選擇最合適的判斷方式。理解這些結構的特性和適用場景,能夠幫助我們編寫更簡潔、更健壯的代碼。 “`

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女