美文网首页
JS 简化三目非空判定语法糖

JS 简化三目非空判定语法糖

作者: tsiic | 来源:发表于2018-03-15 16:19 被阅读0次

若是要显示的数据,出于用户体验的考虑,经常是要做非空判定的,比如 {"出勤率" + attendanceRate + "%"} 若为undefined,直接不处理的化会显示为出勤率undefined%,虽然数据异常就是异常,但是也要显示的好看点。这里假定我们要用“??”替换。

在Swift中是有简化三目语法糖的,如果只是非空判定,可以写rate = attendanceRate ?? "??",然后在查阅的时候还有发现一个PHP的语法糖,我验证了一下Swift里没有,形如rate = attendanceRate ?: "??"
这两种写法都是省略了三目的第一个选项,所以用来做非空判定很好用,但是!JS里居然都没有!!!

两种写法在React Native ES6 中都不能使用,难道我就一定得写 const attendanceRate = this.props.attendanceRate ? this.props.attendanceRate : "??" ???

但是!转机来了,突然发现一个很好用的东西: ||

这啥? 或运算符?没错,就是它。我们可以这么写:

const attendanceRate = this.props.attendanceRate || "??"

目前没发现什么后遗症。

相关文章

  • JS 简化三目非空判定语法糖

    若是要显示的数据,出于用户体验的考虑,经常是要做非空判定的,比如 {"出勤率" + attendanceRate ...

  • vue组件

    以上组件注册的方式有些繁琐,Vue.js为了简化这个过程,提供了注册语法糖在选项对象的components属性中实...

  • [Python]装饰器使用

    兼容参数版: 非语法糖装饰器 基本语法糖装饰

  • OC字面量语法的使用以及优势

    OC的语法中有着一些语法简化的语法糖,例如项目中必定会多次用到NSString,NSNumber,NSArray,...

  • dart语法学习一(语法糖)

    常用符号 语法糖 1、 => 粗箭头运算符 代表的是 2、++ -- 3、as is is! 4、三目运算符(?:...

  • 不可变数组NSArray与可变数组NSMutableArray

    不可变数组NSArray 一些常用用法: 简化的创建方式 (语法糖): 简化的访问方式(通过元素下标来访问) 数组...

  • class-基本语法(es6)

    js构造函数 Class 语法 语法糖 这种语法糖形式,看起来和实际原理不一样的东西,我个人不太赞同形式上强行模仿...

  • 19-React-02 React 之高级使用

    前言 React 中使用了 JSX 语法糖,是一种可以将 HTML 和 JS 揉着写的语法糖; 浏览器不能直接运行...

  • 约束

    约束 一、非空约束(not null) 1.1、在创建表时设置非空约束 语法:create table 表名(字段...

  • React官网随记

    JSX jsx,一种js的语法扩展,React.createElement方法的语法糖。 在jsx中可嵌入任何表达...

网友评论

      本文标题:JS 简化三目非空判定语法糖

      本文链接:https://www.haomeiwen.com/subject/nxphqftx.html