jsLint Expected {
jsLint Expected {
给定以下
for(var i=0; i< data.cats.length; i++) list += buildCategories(data.cats[i]);
jsLint告诉我
Expected '{' and instead saw 'list'.
使用较短的表示法而不是用大括号将其包裹起来,是否有实际的缺点?
这是一种防御性编程——使用花括号可以清楚地定义哪些语句要与for
关联。
如果不使用花括号,以后可能会有人错误地在list += buildCategories...
下面添加另一条语句,期望它也能用for
循环执行。
"使用较短的符号有实际的缺点吗…"
如果你对编码不小心,这可能是错误的来源,但省略它们可以提供更干净的代码IMO,如果你坚持一致且经过深思熟虑的编程标准,省略它们不会成为问题。
例如,当我嵌套了能够排除大括号的if/else
语句时,我更喜欢平衡else
,而不是使用大括号。
if (condition)
if (condition2)
inner_if()
else ;
else
outer_if()
那个代码仍然比这个IMO.…更干净
if (condition) {
if (condition2) {
inner_if();
}
} else {
outer_if();
}
如果有人认为他们可以在if
或else
中添加另一条语句,那么这是一个需要解决的理解问题。
所以实际上,这只是一个使用什么标准的问题。利用大括号当然是一个有效的选择,但我们不应该对此过于教条
如果您想要一个更可配置的工具,可以考虑使用jsHint.com。
JSLint检查以下良好的代码样式。插入大括号总是一种很好的风格,因为它很清楚代码的归属。而且它更短并不是一个真正的参数,因为大多数迷你程序都会处理这个问题。
相关文章:
- jslint-vim configuration
- 你能把grunt.js中的linter改成jslint吗
- Jslint 错误:需要条件表达式,而是看到分配
- 如何避免“;使用数组文字表示法“;以下javascript代码中的jslint错误
- 为什么jslint报告Unexpected'变量'
- 使用自定义选项从控制台运行JSlint
- Jslint改进| url的字符集
- 我应该担心HTML5Shiv.min.js 3.7.2版本上的这些JSLint警告吗?
- 崇高的jslint:任何忽略特定代码段的方法
- JSlint错误selectedDate已定义
- JSLint:在三元变量集的作用域之外使用
- JSLint 如何允许“in”运算符
- 意外的'++'在jslint中
- jsLint仍在警告“;X是在定义之前使用的"即使设置了undef
- 如何查看 IntelliJ 中的所有 jslint 错误
- Jslint 无法识别错误排序函数的选项
- jslint and cshtml files
- jslint.com |无法识别本地存储
- 如何修复JSlint报告的“foo未定义”错误
- jsLint Expected {