news 2026/9/21 19:48:07

【JS】??和?:以及if()三者区别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【JS】??和?:以及if()三者区别
1. ?? 空值合并运算符 (Nullish Coalescing Operator)

作用:当左侧的操作数为null或undefined时,返回右侧的操作数,否则返回左侧的操作数。

示例:

consta=null??'default';// a = 'default'constb=undefined??'default';// b = 'default'constc=0??'default';// c = 0constd=false??'default';// d = falseconste=''??'default';// e = ''

注意:只有左侧为null或undefined时才会返回右侧,其他假值(如0、false、‘’)不会触发。

2. ?: 三元运算符 (Ternary Operator)

作用:条件运算符,是if…else的简写形式。语法为:condition ? expr1 : expr2。如果condition为真,则返回expr1,否则返回expr2。

示例:

constage=20;conststatus=age>=18?'成人':'未成年';// status = '成人'

注意:这里判断的是condition的真假(即布尔值转换)。假值包括:false、0、‘’、null、undefined、NaN。

3. if() 语句

作用:用于根据条件执行代码块。它可以包含else和else if分支。

示例:

letmessage;if(age>=18){message='成人';}else{message='未成年';}

注意:if()语句是控制流语句,不直接返回值(除非在函数中通过return返回)。它根据条件的真假执行不同的代码块。

区别总结
特性???:if()
类型运算符运算符语句
返回值返回一个值返回一个值不返回值(用于控制流程)
判断依据仅判断null/undefined判断真值/假值判断真值/假值
用途提供默认值条件赋值条件执行代码
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/22 0:20:14

招标平台最难的战斗:在持续变化中保持数据稳定与精准

招标平台的“动态数据治理”:如何应对政策变化、源站改版与信息规范的持续挑战? 一个稳定的招标信息服务平台,其后台并非一成不变。相反,它运行在一个充满动态变化的环境中:采购政策频繁调整、各级官方招标公告网改版…

作者头像 李华
网站建设 2026/9/22 7:21:51

洋驼帮跨境物流

在东南亚电商市场深耕的卖家们,最近都在讨论一个令人振奋的数字:店铺稳定率提升80%。这不是凭空而来的宣传口号,而是5000多位卖家通过实际合作验证的结果。一位有着十年经验的物流行业资深从业者坦言,东南亚市场的物流痛点确实不少…

作者头像 李华
网站建设 2026/9/22 5:45:48

Kotaemon在政务场景下的合规性与安全性设计

Kotaemon在政务场景下的合规性与安全性设计 在政务服务日益智能化的今天,公众对政策咨询、办事指引的响应速度和准确性的期待不断提升。越来越多的政府机构开始引入AI对话系统来辅助人工客服,但随之而来的数据安全风险、输出不可控问题以及监管审计难题也…

作者头像 李华
网站建设 2026/9/22 1:43:07

两款免费神器一键修复,网络难题轻松搞定!

点击蓝字关注我 作者 |风雨软件 前言 在使用电脑的过程中,网络突然断开连接的情况是不是让你措手不及?更糟的是,各种网络设置藏得太深,对于非专业人士来说,简直是无从下手,只能干着急。 今天&#xff0…

作者头像 李华
网站建设 2026/9/21 21:46:52

自动化营销有哪些方式,国内外有哪些自动化营销工具?

在数字化营销普及的今天,自动化营销已成为企业降低成本、提升效率的核心手段。数据显示,采用自动化营销的企业线索转化率平均提升45%,营销人力成本降低50%以上。但多数企业面临“方式零散、工具适配差”的问题,难以形成全链路闭环…

作者头像 李华