<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>4个强大的操作符</title>
</head>
<body>
<script type="text/javascript">
// 1. ?? 操作符 零合并操作符 nullish coalescing运算符
// 作用:。如果第一个参数不是null/undefined,这个运算符将返回第一个参数,否则,它将返回第二个参数。
console.log('操作表达式 null ?? 5=====', null ? ? 5);
console.log('操作表达式 3 ?? 5 ====', 3 ? ? 5);
console.log('操作表达式 0 ?? 5 ====', 0 ? ? 5);
console.log('操作表达式 0 || 5 ==== ', 0 || 5);
// 可以看到上面结果
// 使用 || 针对0或者负数都会显示后面的数据; 而 ?? 却不是
// 针对不同的使用场景,我们决定是使用 ?? 还是 ||
// 譬如查询余额,传递一个不存在的储蓄账户,我们需要提示 该用户不存在
function getMoney(money) {
return money || 'You have no account !';
}
function getRealMoney(money) {
return money ? ? 'You have no account !';
}
console.log(getMoney(null)); // 'You have no account !'
console.log(getMoney(0)); //'You have no account !'
// 这里发现0元也会提示 无账户
// 使用 ?? 就会发现完美解决此问题
console.log(getRealMoney(null)); // 'You hav