Skip to content

1.this.date ? date = new Date(this.date) : date = new Date();等价于if语句吗

这行代码可以通过三元条件运算符 (?:) 来实现与常见的 if 语句的等价功能。这种方式是一种简洁的条件语法,通常用于在一个表达式中进行条件判断并根据条件执行不同的操作。

下面是使用三元条件运算符的等价写法和 if 语句的写法:

使用三元条件运算符:

js
const date = this.date ? new Date(this.date) : new Date();

等价的 if 语句写法:

js
let date;
if (this.date) {
  date = new Date(this.date);
} else {
  date = new Date();
}

这两种写法实现了相同的逻辑:如果 this.date 存在(不为假值),则将 new Date(this.date) 分配给 date;否则将 new Date() 分配给 date