【发布时间】:2019-04-26 11:34:53
【问题描述】:
可能缺少一些非常基本的东西。请告诉我 如果有更好的方法来做到这一点,它比在 javascript 中使用三元运算符更优雅。
if (data.isYellowCupcake === YES) {
dataCopy.isCupcake = true;
} else if (data.isYellowCupcake === NO) {
dataCopy.isCupcake = false;
}
【问题讨论】:
-
三元运算符对于这个解决方案来说似乎非常简短和优雅,除非你除了
YES == true之外还有更多案例,否则false -
YES和NO变量的值是多少? -
我猜三元会很优雅。真正的问题是为什么这些数据格式不正确? isYellowCupcake 应该是一个布尔值。甚至更好的是, data.color = 'yellow' 甚至会是首选,这样您就不需要为每个现有的纸杯蛋糕颜色设置一个属性。
-
@Cray 是的,如果只有 isYellowCupkake 具有“是”或“否”,则应该设置比 isCupkake 更多的情况。如果未设置 data.isYellowCupkake 值,则不应设置。
-
您可以在三元运算符中使用more than 2 选项。我在下面发布了示例。
标签: javascript if-statement ternary-operator