健网站怎样建,wordpress ajax登录插件,关于加强政务网站建设的通知,建设一个网站要钱吗学习目标#xff1a;
js中强大的运算符 ?? 非空运算符 学习内容#xff1a;
?? 非空运算符
注意#xff1a;?? 运算符被称为非空运算符。如果第一个参数不是 null/undefined 将返回第一个参数#xff0c;否则返回第二个参数
之前#xff1a; 给变量设置默认值时…学习目标
js中强大的运算符 ?? 非空运算符 学习内容
?? 非空运算符
注意?? 运算符被称为非空运算符。如果第一个参数不是 null/undefined 将返回第一个参数否则返回第二个参数
之前 给变量设置默认值时常用|| 逻辑运算符如果第一个参数不是假值就返回第一个参数否则返回第二个参数
js中的假值 ’ 、0、false、NaN、null、undefined
demo用户账户上可能有0元如果用||会将0视为假值此时就有?? 的必要了
console.log( null ?? 6) // 6
console.log( undefined ?? 6) // 6console.log( ?? 6) //
console.log( false ?? 6) //false
console.log( NaN ?? 6) // NaN
console.log( 0 ?? 6) // 0?? 空赋值运算符
注意 这个运算符和?? 有着很深的联系 1、仅当值为 null 或 undefined 时此赋值运算符才会赋值 2、其实是个语法糖类似 a a b 写成 a b
var x null
var x1 undefined
var x2
var x3 NaN
var y 5console.log(x ?? y) // 5
console.log(x (x ?? y)) // 5console.log(x1 ?? y) // 5
console.log(x1 (x ?? y)) // 5console.log(x2 ?? y) //
console.log(x2 (x2 ?? y)) // console.log(x3 ?? y) // NaN
console.log(x3 ?? y) // NaNconsole.log(x3 (x3 ?? y)) // NaN
console.log(b (31)) // 4es6默认参数: 只有当undefined的时候才会使用默认值
function gameSettingsWithDefaultParams(gameSpeed1, gameDiffeasy) {return {gameSpeed, gameDiff}
}
let yt gameSettingsWithDefaultParams(undefined, null)
console.log(yt) // { gameSpeed: 1, gameDiff: null }