Joh*_*Doe 1 javascript object ternary-operator node.js ecmascript-6
我在下面显示的NodeJS中使用三元运算符
let err = {a: 10, message: 0}
const error = !!err.message ? err.message : err;
Run Code Online (Sandbox Code Playgroud)
但是上面的代码为双重否定显示eslint错误如何解决呢?下面的替代方法与上面相同
const error = err.message ? err.message : err;
Run Code Online (Sandbox Code Playgroud)
实际不需要使用!!-此代码是您想要的:
const error = err.message ? err.message : err;
Run Code Online (Sandbox Code Playgroud)
如果您真的想检查布尔值而不是纯值:
const error = Boolean(err.message) ? err.message : err;
Run Code Online (Sandbox Code Playgroud)
还要注意,您正在执行的操作(如果err.message是事实,使用它或使用err)是逻辑OR运算符的确切用例||:
const err = err.message || err;
Run Code Online (Sandbox Code Playgroud)
如果需要,可以完全避免使用条件运算符-如果err.message为false,则只需替换为err:
const error = err.message || err;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
43 次 |
| 最近记录: |