news 2026/4/16 19:04:20

【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/4/16 12:43:03

提升RAG准确率30%?看看Kotaemon是怎么做到的

提升RAG准确率30%?看看Kotaemon是怎么做到的 在构建企业级智能问答系统时,你是否遇到过这样的尴尬场景:用户问“我们最新的报销政策是什么”,模型回答得头头是道,引用格式也漂亮,可事后一查——内容完全是“…

作者头像 李华
网站建设 2026/4/16 16:11:22

ACS运动控制器 常用指令

ACS 运动控制器的核心指令集基于SPiiPlus Language (SPL),覆盖轴控制、运动规划、IO 交互、程序流、事件触发、系统管理等全维度,以下是按功能分类的完整指令体系(含 ACS 主流控制器(SPiiPlus/CM/SB 系列)通用指令,特殊型号差异会标注): 一、基础语法指令(类 C,通用…

作者头像 李华
网站建设 2026/4/16 12:40:43

不想被大模型忽悠?Kotaemon让你看到每一步推理过程

不想被大模型忽悠?Kotaemon让你看到每一步推理过程 在金融客服系统中,一位用户问:“上个月逾期还款会影响征信吗?” 如果AI只是凭直觉回答“不会”,而没有依据支撑——这不仅可能误导客户,还可能引发合规风…

作者头像 李华
网站建设 2026/4/16 14:23:08

Kotaemon如何实现工具调用与动态决策链?

Kotaemon如何实现工具调用与动态决策链? 在企业级智能对话系统日益复杂的今天,用户早已不再满足于“问一句答一句”的机械式交互。他们期望的是一个能理解上下文、主动解决问题、甚至跨系统协同操作的“数字员工”。然而,大多数现有方案仍停留…

作者头像 李华
网站建设 2026/4/16 12:40:40

MySQL不需要CPU?

MySQL 当然需要 CPU —— 说“MySQL 不需要 CPU”是一个严重误解。 MySQL 是一个复杂的关系型数据库管理系统(RDBMS),它的每一项核心功能——从解析 SQL 语句、执行查询计划、管理事务、到写入磁盘——都高度依赖 CPU 资源。虽然 I/O&#xf…

作者头像 李华