JavaScript 的双问号 和 ?. 的含义和作用

1、?. (可选链运算符)

 ?.   表示:可选链操作符( ?. )允许读取位于连接对象链深处的属性的值,而不必明确验证链中的每 个引用是否有效。操作符的功能类似于 . 链式操作符,不同之处在于,在引用为空(null 或者 undefined) 的情况下不会引起错误,该表达式短路返回值

 在javascript中如果一个值为null、undefined,直接访问下面的属性,会报 Uncaught TypeError: Cannot read properties of undefined 异常错误。

2、??(空值合并运算符)

??  表示:只有左侧的值为 null 或 undefined 的时候才返回右侧的值 

?? 双问号后面是默认值(可常量、可变量)。

在 ?? 前面没有值的时候会默认 ?? 后边的值(类似于三目运算符中的:后面赋值)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用端口扫描工具解决开放端口威胁并增强安全性

从暴露网络漏洞到成为入侵者的通道,开放端口可能会带来多种风险向量,威胁到网络的机密性、完整性和可用性。因此,最佳做法是关闭打开的端口,为了应对开放端口带来的风险,网络管理员依靠端口扫描工具来识别、检查、分析…

远程网络监控(RMON)

远程网络监控是一个使 IT 团队能够获得远程网络可见性的过程,它涉及主动监控网络以帮助网络无缝运行,这些监控远程网络的系统提供对性能的实时洞察,及时检测问题并在影响最终用户之前解决问题。这样,远程网络虽然相距遥远&#xf…

用好语言模型:temperature、top-p等核心参数解析

编者按:我们如何才能更好地控制大模型的输出? 本文将介绍几个关键参数,帮助读者更好地理解和运用 temperature、top-p、top-k、frequency penalty 和 presence penalty 等常见参数,以优化语言模型的生成效果。 文章详细解释了这些参数的作用…

zlmediakit实现rtsp流服务器

本次实现是将内存中的H264数据经过zlmediakit实现为rtsp流。 我是用的是CAPI的方式,将zlmediakit作为一个sdk嵌入到自己的程序中而不是作为一个独立的进进程服务。 1.编译完成zkmedialit后会得到bin include lib三个文件夹如图 其中bin中的MediaServer是作为独立的…

Linux作业练习题-解答

作业1:调研数据中心物理机及虚拟机的操作系统版本、虚拟环境使用的 Hypervisor 类型、服务器硬件配置、资源使用情况(内存/ CPU /磁盘使用率,网络带宽, I / O 速率等),要求调研两个数…

自己实名绑定了几个微信号?赶紧来看看

我们都明白,微信的重要性无处不在,它与我们生活的方方面面紧密相连。如今,微信支付已成为我们日常生活中不可或缺的一部分。无论是购物、用餐,还是日常消费,微信支付都能轻松解决。如果你担心携带现金会有遗失的风险&a…

低代码时代,如何运用JVS低代码表单组件单选与多选组件提升业务效率?

在现代化的数字界面中,组件是不可或缺的一部分。无论是在问卷调查、投票,还是在购物车等场景中,单选和多选组件都扮演着重要角色。它们让用户能够在一系列选项中做出决定,从而提高交互的效率和用户体验。 JVS低代码表单组件中提供…

Apple Vision Pro 开发机申请

申请地址: (免费租用形式) Developer Kit - visionOS - Apple Developer 上海Apple Lab 互动申请: View - Meet with Apple Experts - Apple Developer (需要完善的产品才能去测试哦) 它是如何工作的 我们将借给你一个Apple Vision Pro开发…

想基于AI变现吗,这个Star有1.8K的开源项目分享给你

公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 前言 在如今AI爆发的时代,每个人都想借着AI这股风,进行变现,今天给大家分享一个开源项目,他可以让你基于AI的能力进行变现 项目介绍 …

Doris中的物化视图(十八)

物化视图就是包含了查询结果的数据库对象,可能是对远程数据的本地 copy,也可能是一个表或多表 join 后结果的行或列的子集,也可能是聚合后的结果。说白了,就是预先存储查询结果的一种数据库对象。 在 Doris 中的物化视图&#xf…

指针笔试题分享

今天给大家分享几道关于指针的好题&#xff0c;我觉得的只要是题&#xff0c;都是好题咯&#xff01;下面来看看我们今天的题吧&#xff01; 题目一&#xff1a; #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h>int main() {int a[5] { 1, 2, 3, 4, 5 };int* p…

内网渗透之Linux权限提升大法

文章目录 内网渗透|Linux权限提升大法0x01 前言0x02 工具介绍1.traitor2.LinEnum3.linux-exploit-suggester.sh4.Linux Exploit Suggester 25.beroot 0X02提权手法1.环境变量提权2.利用suid提权3.定时任务提权3.1定时任务文件覆盖提权3.2定时任务tar命令通配符注入提权 4.sudo提…

SPSS信度分析

前言&#xff1a; 本专栏参考教材为《SPSS22.0从入门到精通》&#xff0c;由于软件版本原因&#xff0c;部分内容有所改变&#xff0c;为适应软件版本的变化&#xff0c;特此创作此专栏便于大家学习。本专栏使用软件为&#xff1a;SPSS25.0 本专栏所有的数据文件请点击此链接下…

【shell】脚本实现将开发机user1账户下的abc文件夹复制到user2~4账户下

1 主要内容 可以使用Shell脚本来实现将开发机&#xff08;Linux&#xff09;上user1账户下的abc文件夹复制到user2、user3和user4账户下。 #!/bin/bash# 数组赋值&#xff0c;目标用户列表 # target_users(user2 user3 user4) # 定义数组 target_users()# 生成user数字的数组…

h5小游戏-盖楼游戏

盖楼游戏 一个基于JavaScrtipt、Html5 的盖楼游戏 效果预览 点我下载源代码 Game Rule 游戏规则 以下为默认游戏规则&#xff0c;也可参照下节自定义游戏参数 每局游戏生命值为3&#xff0c;掉落一块楼层生命值减1&#xff0c;掉落3块后游戏结束&#xff0c;单局游戏无时间限…

如何在 Photoshop 中删除颜色

如何在 Photoshop 中删除某种颜色的简单方法 如何在 Photoshop 中删除颜色 步骤1 有很多方法可以在 Photoshop 中删除颜色。作为一般概述&#xff0c;我们希望进行选择&#xff08;在本例中为我们的颜色&#xff09;&#xff0c;然后操作该选择&#xff08;通常删除或屏蔽内容…

Ubuntu开机显示recovering journal,进入emergency mode

在一次正常的shutdown -r now之后&#xff0c;服务器启动不起来了&#xff0c;登录界面显示recovering journal&#xff0c;主要报错信息如下所示&#xff1a; /dev/sda2:recovering journal /dev/sda2:Clearn... You are in emergency mode. After logging in, type journalc…

git 对已有的项目代码建立github仓库

首先在项目根路径下使用以下命令初始化git配置文件&#xff1b; git init关联github仓库地址&#xff0c;我这里使用的是SSH连接方式&#xff1b; git remote add origin gitgithub.com:xxxxx.git关联main分支&#xff0c;其中current_branch代表着你需要push的分支&#xff…

Ubuntu 22.04安装vscode

要在Ubuntu 22.04安装vscode&#xff0c;请完成这些步骤。 首先apt命令更新软件包索引并安装导入微软GPG密钥的依赖软件。 更新&#xff0c;近期内执行过可忽略 sudo apt update安装工具包 sudo apt install software-properties-common apt-transport-https curl当导入GPG后…

快速掌握接口自动化测试的技巧和方法!

通过用Python实现头条项目接口自动化测试&#xff0c;下面一起来学习。 目标 1. 熟悉接口自动化测试的流程2. 能够对一个项目的接口实现自动化测试 接口自动化测试流程 1. 需求分析2. 挑选需要做自动化测试的功能3. 设计测试用例4. 搭建自动化测试环境[可选]5. 设计自动化测…