javascript - 试图简化这个处理 undefined 的 JavaScript 表达式
问题描述
我想保留undefined
if pinned 实际上是未定义的,否则,如果 pinned 为真,我想将等号上的值设置为 1,如果它为假,则设置为 0。我想出了这个可行的方法,但我一直在研究它,似乎它应该更简单。
const resultingValue = pinned === undefined ? undefined : pinned ? 1 : 0;
我想要的是:
如果 pinned 未定义,如果 pinned 为 true,则返回 undefined,如果 pinned 为 false,则返回 1,否则返回 0,否则返回 0;
解决方案
您可以检查类型并返回一些布尔值或undefined
.
const
resultingValue = typeof pinned === 'boolean'
? +pinned
: undefined;