ES6非空判断

2023-11-17

es6 Null传导运算符(?.)

const firstName = message?.body?.user?.firstName || 'default';

?.运算符相当于一种短路机制,只要不满足条件,就不再往下执行。

Null 判断运算符(??)

①||:属性的值为null、undefined、为空字符串、false、0,默认值就会是 || 右边的值

②??:只有运算符左侧的值为null或undefined时,才会返回右侧的值

es6判断对象是否为空,并判断对象是否包含某个属性

(1)、Object.keys:返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历属性的键名

(2)、Object.values:返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历属性的键值

(3)、Object.entries:返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历属性的键值对

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ES6非空判断 的相关文章

  • JS数组与对象数据格式互相转换

    JS数组与对象数据格式互相转换 一 二维数组转数组对象 开发过程中后端传过来的数据和自己需要的数据格式不统一 需要数据格式的转化 let twoArr 20 30 40 30 40 50 40 50 60 let keys name1 na
  • js执行时序 宏任务和微任务

    宏任务一般是 包括整体代码script setTimeout setInterval I O UI render 微任务主要是 Promise Object observe MutationObserver process nextTick
  • ES6详解 快速上手!

    一 Es6 1 1 ES6的概述 ECMAScript的快速发展 编程语言JavaScript是ECMAScript的实现和扩展 ECMAScript是由ECMA 一个类似W3C的标准组织 参与进行标准化的语法规范 ECMAScript定义
  • 【Javascript】数组拼接的两种方法

    数组拼接的两种方法 1 改变原数组 1 push 扩展运算法 1 不改变原数组 1 concat 2 扩展运算符 1 改变原数组 1 push 扩展运算法 利用push搭配扩展运算符的方法 arr2经过扩展运算符 由 3 4 5 变成3 4
  • 【面试题】说一下promise的理解

    一 什么是Promise ES6 异步编程的一种解决方案 比传统的方案 回调函数和事件 更加的合理和强大 大家都知道传统解决异步编程用的是回调函数套回调函数 简称回调地域 以前用JQuery的朋友应该是相当熟悉了 维护起来很难搞 回调地域
  • Vue开发 常用方法总结

    nextTick this nextTick 将回调延迟到下次 DOM 更新循环之后执行 在修改数据之后立即使用它 然后等待 DOM 更新 使用场景 在一些情况下 变量进行了初始赋值或更新 但是DOM还未更新完成时 使用变量的值是不起作用的
  • ES6知识点总结二:解构赋值

    3 解构赋值 ES6 允许按照一定模式 从数组和对象中提取值 对变量进行赋值 这被称为解构 数组 const courseArr es6 es7 es8 const a courseArr 0 const b courseArr 1 con
  • Map 转化为数组

    含义 Map 数据结构类似于对象 也是键值对的集合 但是键的范围不限于字符串 各种类型的值 包括对象 都可以当做键 Map 结构提供了 值 值 的对应 是更完善的 Hash 结构实现 Map 可以作为构造函数 新建 Map new Map
  • ES6关于函数详解

    设置默认值的方式 ES6 之前 不能直接为函数的参数指定默认值 只能采用变通的方法 ES6 允许为函数的参数设置默认值 即直接写在参数定义的后面 function log x y World console log x y log Hell
  • ES6迭代器、Set、Map集合和async异步函数

    目录 迭代器 Iterator 的作用 Iterator 的遍历过程 Set Map集合 map和对象区别 async异步函数 迭代器 迭代器 Iterator 就是这样一种机制 它是一种接口 为各种不同的数据结构提供统一的访问机制 任何数
  • 前端常用js插件

    浏览目录 包管理器 加载器 打包工具 测试框架 框架 断言 覆盖率 运行器 QA 工具 MVC 框架和库 基于 Node 的 CMS 框架 模板引擎 Flux 数据可视化 时间轴 编辑器 文件 函数式编程 响应式编程 数据结构 日期 字符串
  • ES6 Promise详解

    优质资源分享 学习路线指引 点击解锁 知识定位 人群定位 Python实战微信订餐小程序 进阶级 本课程是python flask 微信小程序的完美结合 从项目搭建到腾讯云部署上线 打造一个全栈订餐系统 Python量化交易实战 入门级 手
  • 浏览器无法加载本地文件

    问题描述 在Visual Studio Code 编写HTML文件时需要将 csv文件内容在浏览器控制台窗口输出 浏览器控制一直报错 如下图所示 原因 跨域资源共享问题 本地文件是放在file 这样的系统下 而非网络资源比如http 下 造
  • VUEX各个模块的封装以及Router封装

    一 各个模块的作用 state 用来数据共享数据存储 mutation 用来注册改变数据状态 同步 getters 用来对共享数据进行过滤并计数操作 action 解决异步改变共享数据 异步 二 创建文件 actions js getter
  • React解密:React Hooks函数之useCallback和useMemo

    之所以将useCallback和useMemo放到一起 从某种意义上说 他们都是性能优化的始作俑者 他们也有很多的共性 我们先来回顾一下class组件性能优化的点 调用 setState 就会触发组件的重新渲染 无论前后 state 是否相
  • vue项目中批量删除如何实现的

    简单回答 与单个删除的接口为同一个 然后通过数组对象的id来删除
  • 【ES6】Reflect反射机制

    文章目录 一 Reflect概述 二 用法详解 1 Object gt Reflect 2 修改Object方法的返回结果 3 命令式操作 gt 函数式操作 4 与Proxy对象的方法一一对象 5 apply 总结 一 Reflect概述
  • ES6阮一峰入门教程

    地址为 https es6 ruanyifeng com
  • VUE实践优化:轮询机制与代码结构升级

    前言 我们之前探讨过 对于包含处理状态的表格数据 我们可以通过轮询的方式进行处理 轮询更新进度条 JavaScript中的定时器和异步编程技巧 然而 当我们离开页面时 定时器仍会继续触发请求 这会造成资源的浪费 因为返回的数据并没有被渲染出
  • 前端基础:回顾es6相关知识

    Author note 题记 ECMAscript is international standard of javascript ECMA 是 js的国际标准版语言 let and const 为什么之前用var现在需要用let cons

随机推荐

  • 第二届蓝桥杯-最小公倍数问题

    题目 题目链接 题解 数学 高精度 如果直接按照计算多个数连续计算最小公倍数 那么显然要经过高精度乘法 高精度除法 两个高精度过于麻烦了 换个思路 我们将每个数都分解质因数 全部数的最小公倍数必然由分解得到的质因数相乘得到 而且构成最小公倍
  • uniapp开发h5,解决项目启动时,Network: unavailable问题

    网上搜了很多 发现都说是要禁用掉电脑多余的网卡 这方法我试了没有好 不晓得为啥子 之后在网上看 uniapp的devServer vue2的话对标的就是webpack4的devserver 除了复杂的函数配置项 所以我去查了webpack4
  • Maven学习 (一) 搭建Maven环境

    http www cnblogs com quanyongan archive 2013 04 17 3025971 html 有两种方式可以配置maven的环境配置 本人推荐使用第二种 即使用本地的maven安装文件 个人感觉这样可以方便
  • dvwa中的xss(跨站脚本)攻击

    环境 dvwa 192 168 11 135 dvwa版本 Version 1 9 Release date 2015 09 19 kail机器 192 168 11 156 一 XSS是什么 XSS Cross Site Scriptin
  • 2023华为OD机试真题-服务中心的最佳位置(JAVA、Python、C++)

    题目描述 一家快递公司希望在一条街道建立新的服务中心 公司统计了该街道中所有区域在地图上的位置 并希望能够以此为依据为新的服务中心选址 使服务中心 到所有区域的距离的总和最小 给你一个数组 positions 其中 positions i
  • 成功解决ValueError: setting an array element with a sequence. The requested array has an...

    背景 这个问题是在使用scipy和numpy处理数据时出现的 scipy的版本为1 9 1 numpy的版本为1 25 0 而scipy 1 9 1时 与其匹配的numpy版本为 1 18 5 1 25 0 左闭右开 如果不匹配的话 在使用
  • 2022年前端面试题加答案

    1 javascript基本数据类型 string number null underfined boolean object是所有对象的父对象 2 浅谈javascript中变量和函数声明的提升 变量和函数声明的提升会被提升到最顶部去执行
  • C++中的并行与并发

    1 1 并行基础 std thread 用于创建一个执行的线程实例 所以它是一切并发编程的基础 使用时需要包含
  • 夜夜肝到秃顶,2022年Java面试题目收集整理归纳

    开始的碎碎念 本文大多是各大企业的topN题目 针对java中高级开发 本文会持续收集更新内容 如果大家有优质的Java面试题 也欢迎大家来投稿 特意整理出这个分类的目录 方便大家平时复习和收藏哈 希望正在准备面试的朋友们能顺顺利利找到自己
  • 用python进行图片处理和特征提取

    原文来自 http www analyticsvidhya com blog 2015 01 basics image processing feature extraction python 毫无疑问 上面的那副图画看起来像一幅电脑背景图
  • 区块链 2.0笔记

    区块链 2 0 以太坊概述 相对于比特币的几点改进 缩短出块时间至10多秒 ghost共识机制 mining puzzle BTC 计算密集型 ETH memory hard 限制ASIC proof of work gt proof of
  • 【每日一题】1572. 矩阵对角线元素的和

    每日一题 1572 矩阵对角线元素的和 1572 矩阵对角线元素的和 题目描述 解题思路 1572 矩阵对角线元素的和 题目描述 给你一个正方形矩阵 mat 请你返回矩阵对角线元素的和 请你返回在矩阵主对角线上的元素和副对角线上且不在主对角
  • 解决Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.

    一 Android Studio 引用多个jar aar或者工程时出现 com Android build api transform TransformException Java util zip ZipException duplic
  • C# language Study - 1

    本节讲叙了一些基本的C 语法上的知识 这些知识一般都是在C语言中接触不到的 最基础的 C语言中也存在的知识点 就略过不提了 1 C 中预定义的值类型 a 整型 sbyte System SByte 8位有符号整数 short System
  • 华为OD机试 - 快速开租建站(Java)

    题目描述 当前IT部门支撑了子公司颗粒化业务 该部门需要实现为子公司快速开租建站的能力 建站是指在一个全新的环境部署一套IT服务 每个站点开站会由一系列部署任务项构成 每个任务项部署完成时间都是固定和相等的 设为1 部署任务项之间可能存在依
  • 华为od机试题2 真题

    华为od机试题 真题 77 满足最大消费额度 76 小朋友身高位置 75 字符连续出现最大次数 74 最少停车数 73 字母多条件排序 71 交叉排序 70 水仙花数 69 消除相邻且相同字母 以下题目附带Java解法 是我个人写的 不一定
  • RobotFramework入门(二)appUI自动化之app启动

    前言 本章主要讲述appUI自动化的一个小示例 ps 这里虽然是一个小示例 但如果你要通过robot去做appUI自动化 思路都是一样的 可以自行搜索关键字组合去使用 其实正常情况下 我们会直接使用代码去实现自动化 而不是在ride上实行哈
  • discuz主题列表页伪静态化设置方法(lnmp+wamp+lamp通用)

    大家都知道在discuz程序中 伪静态化后 门户文章跟帖子内容都可以设置成功并能正常的访问 但是在论坛帖子的列表页却还是动态的地址 http www 52hgn com forum php gid 40 比如这种 我们想把他变成这种静态地址
  • Java从入门到实战总结-4.4、JDBC

    Java从入门到实战总结 4 4 JDBC 文章目录 Java从入门到实战总结 4 4 JDBC 1 简介 2 JDBC体系结构 3 JDBC核心组件 4 CRUD语法介绍 回顾 5 使用步骤 6 JDBC连接步骤 6 1 JDBC执行SQ
  • ES6非空判断

    es6 Null传导运算符 const firstName message body user firstName default 运算符相当于一种短路机制 只要不满足条件 就不再往下执行 Null 判断运算符 属性的值为null unde