使用ES6的箭頭函式和展開運算子(...)可以簡化使用邏輯與(&&)運算子的程式碼。這種方法通常用於當你有一組變數,並且想要在單個表示式中檢查它們是否都滿足特定條件時。以下是一個示例,展示如何使用箭頭函式和展開運算子來簡化檢查多個變數是否都已定義且不為空的程式碼:
// 假設有以下變數
const a = 'value1';
const b = 'value2';
const c = 'value3';
const d = 'value4';
const e = 'value5';
// 使用箭頭函式和展開運算子檢查所有變數
const allDefinedAndNotEmpty = (...variables) => variables.every(val => val !== undefined && val !== null && val !== '');
if (allDefinedAndNotEmpty(a, b, c, d, e)) {
console.log('所有變數都已定義且不為空');
// 執行進一步的操作
} else {
console.log('一個或多個變數未定義或為空,直接返回');
// 直接返回,不執行後續操作
}
在這個示例中:
allDefinedAndNotEmpty 是一個箭頭函式,它接受一組變數作為輸入。
...variables 是一個展開運算子,它允許我們將陣列或多個單獨的引數作為陣列輸入到函式中。
every 方法檢查陣列中的每個值是否滿足條件(即不是 undefined、null 且不為空字串)。
使用這種方法,你可以將檢查多個變數的邏輯封裝在一個單獨的函式中,這使得程式碼更加簡潔和可重用。此外,這種方法的優點是它很容易擴充套件到更多的變數,你只需要在呼叫 allDefinedAndNotEmpty 函式時傳遞更多的變數即可。