[前端] 空值合并运算符(??)原理(笔记)

以如下代码为例

const avatar = computed(() => props.user.avatar ?? fallbackAvatar)

该运算符的工作原理是,如果左侧的表达式props.user.avatar的值为nullundefined,那么它会返回右侧的fallbackAvatar。然而,如果props.user.avatar的值是一个空字符串’‘,空值合并运算符不会认为它为“缺失”,因为空字符串是一个有效的值,它不是nullundefined
因此,当props.user.avatar为’'时,??运算符不会触发右侧fallbackAvatar的返回。如果你想在props.user.avatar为空字符串时也使用fallbackAvatar,你应该使用逻辑或运算符(||)来替代空值合并运算符,因为||会返回第一个非 false 值:

const avatar = computed(() => props.user.avatar || fallbackAvatar)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/842867.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大语言模型实战——搭建纯本地迷你版RAG

1. 概念 RAG(Retrieval Augmented Generation)检索增强生成,它结合了搜索技术和大语言模型的提示词功能,以搜索算法找到的信息作为背景上下文,来辅助大语言模型(Large Language Model, LLM)生成…

Oracle数据库操作问题汇总

一、简介 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强&…

基于SpringBoot+Vue在线动漫信息平台设计和实现(源码+LW+部署讲解)

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 🌹推荐一个人…

python 密码生成器

要用 Python 创建一个密码生成器,可以使用 Python 的内置库来生成随机字符。以下是一个简单的密码生成器示例,您可以根据需要进行修改和扩展。 import random import stringdef generate_password(length=12):"""生成一个指定长度的密码"""# …

Ubuntu20.04安装VINS_Mono 和 VINS_Fusion

文章目录 一、问题描述二、依赖环境1. Eigen 安装2. glog 安装3. gflags 安装4. ceres 安装 三、VINS-Mono 安装1. git 下载并安装2. OpenCV 版本冲突3. 运行 四、VINS—Fusion 安装1. git 下载并安装2. OpenCV 版本冲突3. 运行 五、日常bug1. 动静态库链接冲突 一、问题描述 …

今日好料推荐(Altium Designer + 仿真器驱动)

今日好料推荐(Altium Designer 仿真器驱动) 参考资料在文末获取,关注我,获取优质资源。 Altium Designer Altium Designer 是一种高度集成的电子设计自动化 (EDA) 软件工具,广泛应用于电子电路和印刷电路板 (PCB) …

操作系统实验--终极逃课方法

找到图片里的这个路径下的文件 ,结合当前题目名称,把文件内容全部删除,改为print print的内容为下图左下角的预期输出的内容

Java---Cloneable接口---浅克隆和深克隆

在Java中,我们如何实现一个对象的克隆呢? 在Java中实现对象的克隆,我们要用到Cloneable接口。克隆也分为浅克隆和深克隆。 1.实现浅克隆 1.重写clone方法 当我们想直接通过前面已经建立好的对象来调用Object类中的clone方法时,…

解决mybatis/mybatis plus报错:Invalid bound statement (not found) 的方法汇总

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候接口与xml不匹配,要么是找不到,要么是找到了却匹配不到。 我的问题是项目没有把最新的方法x…

正版软件 | Internet Download Manager 下载管理器

前言 IDM 是一个下载加速器,可将下载速度提高多达 8 倍,恢复、组织和安排下载。 30 天免费试用!https://www.internetdownloadmanager.cc/ 新版本 Internet Download Manager v 6.40:添加了 Windows 11 兼容性。改进了媒体采集…

世界人口名表前十名排名(2023最新)

截止2023年11月26日,全球 240 个国家和地区人口总数为8,032,122,420人,其中印度以 1,426,711,933 人位居第一,成为世界上人口最多的国家,中国以 1,425,722,992 人位居地球第二,第三至第十名分别是:美国、印…

5G工厂长啥样

5G工厂是一种新型的工业互联网基础设施,利用5G为代表的新一代信息通信技术集成,打造新型工业互联网基础设施。在5G工厂中,自动化和智能化设备广泛使用,高度互联的工厂网络得以实现,远程监控和管理成为可能,…

一千题,No.0035(个位数统计)

给定一个 k 位整数 Ndk−1​10k−1⋯d1​101d0​ (0≤di​≤9, i0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N100311,则有 2 个 0,3 个 1,和 1 个 3。 输入格式: …

C#之显示转换

在C#中显示转换分为三种本别是: 括号强转,parse法,convert法。下面就为大家介绍一下吧!!! 括号强转 作用: 一般情况下 将高精度的类型转换为低精度 语法: 变量类型 变量名 (转换的变量类型名称) 变量; …

系统测试需求指南(Word版-软件全套资料下载)

1 目的 2 概述 3 测试需求 3.1 测试范围 3.2 测试目标 4 测试需求的现状 5 测试需求的内容 5.1 主体内容 5.2 管理内容 6 测试需求的制定 6.1 需求信息来源 6.2 需求分析 6.2.1 功能性需求 6.2.2 系统功能需求 6.2.3 界面需求 6.2.4 安装需求 6.2.5 业务需求 …

qmt量化交易策略小白学习笔记第8期【qmt编程之获取股票资金流向数据--内置Python】

qmt编程之获取股票资金流向数据 qmt更加详细的教程方法,会持续慢慢梳理。 也可找寻博主的历史文章,搜索关键词查看解决方案 ! 感谢关注,需免费开通量化回测与咨询实盘权限,可以和博主联系! 获取股票资金…

【Unity之FGUI】黑神章Fairy GUI控件详解

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:就业…

echars 网站

1. Examples - Apache ECharts 2. PPChart - 让图表更简单 3. https://madeapie.com/#/ 4. echarts图表集

Java并发编程(二)线程安全的单例模式

一、双重检查锁定(Double-Checked Locking) 这种设计模式的目的是为了减少在多线程环境下获取锁的开销,尤其是当实例化对象的操作很昂贵,且该对象只会被实例化一次时。双重检查锁定模式的基本思想是,在创建对象之前进行…

学习笔记——交通安全分析03

目录 前言 当天学习笔记整理 绪论 交通行为、心理与安全 结束语 前言 #随着上一轮SPSS学习完成之后,本人又开始了新教材《交通安全分析》的学习 #整理过程不易,喜欢UP就点个免费的关注趴 当天学习笔记整理 绪论 针对道路设施安全,我…