javascript空值合并运算符”??”
七娃博客55人阅读
javascript空值合并运算符"??" 是什么意思?最近总是遇到这个运算符‘??’,最开始接触是在pdfjs插件中,遇到它是因为这个插件在linux环境中运行时报错: ?不是一个函数。
场景还原
然后今天在用chatGPT优化以下代码时,发现人工智能推荐使用空值合并运算符,哦!原来这个家伙'??'叫“空值合并运算符”。真是相见恨晚啊!
优化前:
QUI.getBoxRect = function (id = ""){ let box = !Q.isEmpty(id) ? document.getElementById(id) : document.body return box.getBoundingClientRect() }
优化后:
QUI.getBoxRect = function (id = "") { return (document.getElementById(id) ?? document.body).getBoundingClientRect(); }
空值合并运算符
空值合并运算符(??)是ES2020引入的新语法,可用于简化代码。可以使用空值合并运算符来替代判断为空的方法,使代码更加简洁。
理解
空值合并运算符(??)会先执行??之前的代码,如果得到null,undefined 就按照右侧的代码方案执行!
对比逻辑运算符(||)
逻辑运算符||一般是左侧转换为布尔值,并且为假时(“”,null,undefined,0,NaN,false),执行右边,使用场景就是给变量设置默认值。
这样我们今天就又学习了一个前端的新知识点,每次总结都是一次收获!我是陈小知,每天学习进步一点点!
评论 | 0 条评论
登录之后才可留言,前往登录