javascript - 在 switch 中使用 lint 的问题 - 使用三元运算符的情况
问题描述
我是使用“lint”的新手
case 'up':
index > 0 ? index-- : 0; break;
我有一个 pre-commit lint 脚本,它显示以下错误:“错误期望一个赋值或函数调用,而是看到一个表达式”
如果我将代码更改为长版本,一切都好吗?
case 'up':
if (index > 0) {
index--;
} else {
index = 0;
}
第一个代码片段不是第二个的缩写形式吗?
提前致谢
解决方案
不,您需要分配index
:
index = index > 0 ? index - 1 : 0;
如果index
总是积极的,你应该把它缩短一点
index = index ? index - 1 : 0;
推荐阅读
- python - 一个对象可以在不指定输入参数和返回值的情况下具有“可调用”类型提示吗?
- javascript - 如何避免渲染中的嵌套三元?
- sql - 仅关于与 MAX([field]) 关联的字段的 SQL 问题
- python - 如何在 yahoo_fin Python 包中使用日期
- sql - NVL2、NULLIF 和 COALESCE 有什么区别
- ruby-on-rails - 在创建和更新方法中创建关联记录之前运行的活动记录回调
- c# - 如何使用 lambda 表达式从 SQL Server 获取随机实体,并且该实体可以一次出现
- python-3.x - PyGtk3 缩放 GdkPixbuf 使 Gtk.DrawingArea 绘制速度变慢
- bash - 我需要遍历这个文件的每一行,在 Bash 中将每一行的每个值相加
- excel-formula - RunningCount webi 业务对象公式