随着新 ECMAScript 标准的普及,许多曾经的 JavaScript 常见写法可以用更简单清楚的语法重构。本文做了一个简单的整理。
三元操作符
当想写 if...else
语句时,使用三元操作符来代替。1 2 3 4 5 6 7 8
| const x = 20; let answer;
if (x > 10) { answer = "is greater"; } else { answer = "less than 10"; }
|
简写:1
| const answer = x > 10 ? "greater than 10" : "less than 10";
|
if
语句也可以像这样嵌套:1
| const answer = x > 10 ? "greater than 10" : x < 5 ? "less than 5" : "between 5 and 10";
|
短路求值简写方式
当给一个变量赋值时,你可能想要确定值不是 null
,undefined
或空值。可以写一个多重条件的 if
语句:1 2 3
| if (variable1 !== null || variable1 !== undefined || variable1 !== "") { let variable2 = variable1; }
|
或者可以使用短路求值方法:1
| const variable2 = variable1 || "new";
|
另一个例子:1 2 3 4 5 6
| let dbHost; if (process.env.DB_HOST) { dbHost = process.env.DB_HOST; } else { dbHost = "localhost"; }
|
简写:1
| const dbHost = process.env.DB_HOST || "localhost";
|
声明变量简写方法
1 2 3
| let x; let y; let z = 3;
|
简写方法: