JavaScript中问号的三种用法??和?.以及?:,您知道吗?

最近,看了一些关于JavaScript的测试脚本,觉得JS 中问号的用法还是蛮有意思的,于是做了一下总结,在这里分享给大家!JS中的问号大概有三种用法,分别是:空值合并操作符、可选链操作符和三目运算。

问号问号(??)

空值合并操作符??是一个逻辑操作符,当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数。

例如

console.log(null ?? "xx")
输出 xx
console.log(1 ?? "xx")
输出 1

问号点 (?.)

可选链操作符(?.)可选链操作符允许读取位于连接对象链深处的属性的值,而不必明确验证链中的每个引用是否有效。 使用它的好处是引用为null 或者 undefined的情况下不会引起错误。

语法:obj?.prop obj?.[expr] arr?.[index] func?.(args)

例如

var obj={a:{b:1}}
console.log(obj?.a?.b)
输出1
console.log(obj?.a?.c)
输出 undefined

问号冒号(?: )

这是三目运算,具体表达式是(condition ? exprIfTrue : exprIfFalse)

该表达式的含义是 条件condition是真,则执行exprIfTrue ,否则执行exprIfFalse

举个例子大家就懂了

var n = 10;
console.log((n >= 11) ? "a" : "b");
输出b
当 var n = 12;
输出a

分享名称:JavaScript中问号的三种用法??和?.以及?:,您知道吗?
文章转载:http://www.shufengxianlan.com/qtweb/news29/433979.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联