iT邦幫忙

2024 iThome 鐵人賽

DAY 9
0
JavaScript

入門JavaScript系列 第 9

運算子應用

  • 分享至 

  • xImage
  •  

JavaScript 的運算子不僅限於基本的數學和邏輯運算,它們在更複雜的應用中也能發揮重要作用。
以下是一些進階應用的範例,展示運算子的靈活性和強大功能。

1. 使用三元運算子進行條件判斷

三元運算子是一種簡潔的條件判斷方式,可以用於直接賦值。

let age = 20;
let status = (age >= 18) ? 'Adult' : 'Minor';
console.log(status); // Adult

2. 利用邏輯運算子處理多個條件

邏輯運算子可以用於組合多個條件,讓代碼更加簡潔。

let isLoggedIn = true;
let hasPermission = false;

if (isLoggedIn && hasPermission) {
    console.log('Access granted.');
} else {
    console.log('Access denied.');
}

3. 使用逗號運算子

逗號運算子可以在一行中執行多個表達式。

let x = (1, 2, 3); // x 的值為 3
console.log(x); // 3

let y = (let a = 1, b = 2, a + b); // SyntaxError

4. 位運算的應用

位運算符可以用於處理位元數據,對性能要求較高的場景尤其有用。

let a = 5; // 二進制:0101
let b = 3; // 二進制:0011

console.log(a & b); // 位與:0011 -> 3
console.log(a | b); // 位或:0111 -> 7
console.log(a ^ b); // 位異或:0110 -> 6
console.log(a << 1); // 左移:1010 -> 10

5. 使用 typeofinstanceof 進行類型檢查

這些運算子可以幫助確定變數的類型,防止錯誤。

let variable = 'Hello, world!';

if (typeof variable === 'string') {
    console.log('It is a string.');
}

let obj = new Date();
if (obj instanceof Date) {
    console.log('It is a Date object.');
}

6. 短路評估

邏輯運算符的短路特性可以用於簡化代碼,特別是在函數調用中。

let getName = () => 'John Doe';
let isAuthenticated = true;

let userName = isAuthenticated && getName(); // 如果 isAuthenticated 為 true,則執行 getName()
console.log(userName); // John Doe

7. 賦值運算子的鏈接

可以連續使用賦值運算子來處理多個變數。

let a, b, c;
a = b = c = 10; // 所有變數都會被賦值為 10
console.log(a, b, c); // 10 10 10

8. 數組和對象的解構賦值

雖然這不是傳統意義上的運算子,但解構賦值利用了賦值運算子的特性來簡化數據提取。

let person = { name: 'Alice', age: 25 };
let { name, age } = person;
console.log(name, age); // Alice 25

let numbers = [1, 2, 3];
let [first, second] = numbers;
console.log(first, second); // 1 2

9. 鏈式比較運算子

可以使用比較運算子進行連續比較。

let a = 5;
console.log(a > 2 && a < 10); // true

10. 利用函數和運算子的組合

可以使用函數和運算子的組合進行更複雜的邏輯運算。

function checkEligibility(age) {
    return (age >= 18) ? 'Eligible' : 'Not eligible';
}

console.log(checkEligibility(20)); // Eligible

這些進階應用展示了 JavaScript 運算子的靈活性和強大功能,能夠幫助開發者編寫更高效、清晰和可維護的代碼。理解這些運算子的使用方式,可以更好地應對複雜的編程需求。


上一篇
運算子
下一篇
陣列
系列文
入門JavaScript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言