1
maichael 2020-02-19 20:46:40 +08:00
自己写代码的话随意。
团队的话以代码规范为准。 |
2
QQAdele2 2020-02-19 20:48:18 +08:00
袋鼠数据库管理工具( DBKangaroo )每周都要发布一个版本,所以
https://dbkangaroo.github.io/ |
3
lxk11153 2020-02-19 20:50:07 +08:00 1
依老夫看 3030 年应该还有类似问题: 加不加分号,Tab 还是 Space
|
4
QQAdele2 2020-02-19 20:51:58 +08:00
同意楼主,实测确实快了。
袋鼠数据库管理工具( DBKangaroo )每周都要发布一个版本,前面几周上传安装包要一个上午,还经常断线; 最近一周上传只要半个小时左右即可搞定。 也欢迎大家关注 袋鼠数据库管理工具( DBKangaroo )的成长。。。 |
5
varzy 2020-02-19 20:58:38 +08:00 via iPhone
写项目第一件事就是配置格式化工具,未来想换风格只需要改个配置重新跑一下格式化命令就好
|
7
ddsfeng 2020-02-19 21:04:04 +08:00 2
|
8
llb123 2020-02-19 21:04:50 +08:00
。。。这不是 1 看公司规范 2 看自己习惯么,反正 js 编译的时候也会给你加上分号的
|
9
KuroNekoFan 2020-02-19 21:06:01 +08:00
格式化工具能解决的问题就不要讨论了
|
10
heyjei 2020-02-19 21:07:36 +08:00
看项目带的 ESLint,如果没有看心情
|
11
learnshare 2020-02-19 21:08:28 +08:00
选一个合适的代码风格就行了
https://github.com/airbnb/javascript |
12
liuy1994g 2020-02-19 21:35:11 +08:00 via Android
js 不需要加分号啊
|
13
chenliangngng 2020-02-19 21:43:08 +08:00
不加。鉴于 js 不加分号乃糟粕之一,设置 IDE 保存时自动格式化帮加
|
14
MrUser 2020-02-19 21:50:56 +08:00
同意 9# 的,
配置好格式化工具,加与不加一个快捷键就统一了。 |
15
galikeoy 2020-02-19 22:11:07 +08:00
放心,不管你加不加,Babel 会帮你加的
|
16
unicloud 2020-02-19 22:15:36 +08:00 via iPhone
我习惯在结尾加上;
这是在 jQuery 时代养成的习惯; |
17
mongodb 2020-02-19 22:18:26 +08:00 1
Python 不加。
所以我在 JS 里也不加。 |
18
charlieputon 2020-02-19 22:54:27 +08:00 via Android
一般编辑器不是会提示;是多余的吗,如果在语法上的确是多余的。记得 idea 和 as 都是这样。
|
19
ericls 2020-02-19 23:24:59 +08:00 via iPhone
不要浪费时间搞这些
都是可以自动加或者去掉的东西 0 成本改变决定的东西 |
20
ujued 2020-02-19 23:34:51 +08:00 via iPhone
站在极客的角度呢,不加会好些,看上去干净
|
21
Blackricky 2020-02-20 00:42:41 +08:00 1
在 《你不知道的 JavaScript (中卷)》里专门有一个小节( 5.3 节)叫 [自动分号] 作者有认为需要加上分号。
JavaScript 有时候会为代码自动加上分号, 自动分号插入( Automatic Semicolon Insertion,ASI )这是一种 “纠错”的机制,作者认为我们应该将这种机制的依赖降到最低。 有兴趣可以去看看原书。 我觉得说的很有道理,所以我加上了。 |
22
beastk 2020-02-20 00:57:07 +08:00 via iPhone
话说压缩的时候,不加分号会导致无法闭合吗?
|
23
molvqingtai 2020-02-20 01:14:13 +08:00 via Android
不加
|
24
S4msara 2020-02-20 02:05:04 +08:00 via Android
习惯是有这么个习惯,所以 eslint 总是让我很难受,于是有在刻意提醒自己不加了
|
25
mrcotter2013 2020-02-20 05:34:49 +08:00 via iPhone
不喜欢加,ESLint 和 Prettier 配置好自动去除多余的符号,空格,缩进一类的
|
26
shanlanlan 2020-02-20 07:58:18 +08:00 1
@Livid 2/4 楼强行广告。
|
27
alexsunxl 2020-02-20 08:28:09 +08:00
不加
反正编译器会加上 |
29
Track13 2020-02-20 09:46:10 +08:00 via Android
vue 不加分号,其他习惯加。
|
30
sunmoon1983 2020-02-20 10:23:25 +08:00
强迫症必须加
|
31
Livid MOD |
32
yiqiao 2020-02-20 10:31:29 +08:00
PHP 不是必须加「 ; 」的吗。。。
不加你能运行? 前端这个应该有规范吧。按规范来就好了啦 |
33
magiclz233 2020-02-20 10:32:17 +08:00
我自己觉得加上好点,因为这样在看代码的时候更清晰一点,但是我们团队是不加,我就好多都是自己加上,写完了一格式化没了。但是在写 Java 的时候,又得加上,搞的有点乱
|
34
drydiy 2020-02-20 10:40:23 +08:00
我曾经也为这个烦恼。我尝试不加一段时间后,发现代码看起来简洁了一点,就不加了。
其实需要手动加;的情况有这么几种: 1、当你使用 return 返回内容时,注意代码块需要跟 return 在同一行。( break、throw、continue 等同理) 2、注意 ()、[] 作为行头会跟上一行串联。 |
35
ben1024 2020-02-20 11:17:28 +08:00
看缘分加,顺手就加
php 必须要加的 |
36
jydeng 2020-02-20 11:19:42 +08:00
团队统一就好。我们统一加,因为都有 java、c#背景,习惯了。
|
38
no1xsyzy 2020-02-20 11:29:40 +08:00
没什么好说的,我觉得这种可以自动化等价互转的问题甚至不能叫做代码规范。规范让人遵守以保证某种要求的,但这种问题你根本没必要去刻意遵守,只需要无脑让工具完成。
至于用哪个,看哪个顺眼就行,如果看的量还没多到足以看任何一个顺眼,那就抛硬币决定 —— 直到你真觉得不顺眼了,那你显然知道该怎样了。 |
39
DOLLOR 2020-02-20 11:44:12 +08:00
不加分号的,能不能告诉我,如何避免这种问题?
var a = b (function(){})() func() ['ul', 'ol'].map(func) |
40
ochatokori 2020-02-20 12:03:24 +08:00 via Android
@DOLLOR #39 37 楼回答了你的问题,遇到([的行开头加个分号就是了,人又不是死的,说不加就全部不加
|
42
lijsh 2020-02-20 12:09:28 +08:00
看团队规范,反正 eslint 可以帮你 fix
|
43
lxk11153 2020-02-20 12:10:21 +08:00
所以我选择加,See: "应该将这种机制的依赖降到最低"
|
44
FaiChou 2020-02-20 13:04:13 +08:00
看过 react conf 里有一期, 一大佬在上面用 vim 讲解 react hooks, 他说过: 别问我为什么用 let 而不是 const, 年纪大了, 能少敲几下就少敲几个. (大概这么个意思)
|
45
Curtion 2020-02-20 13:24:31 +08:00
都是 eslint 来规范的,反正又不需要自己操作,如果是自己的项目就按照自己的想法来设置 eslint 嘛
|
46
realkaiway 2020-02-20 13:33:58 +08:00 via iPhone
我个人写 react 配合 eslint 句末加;已经是一种习惯,但奇怪的是 vue-cli 的脚手架不搞这套,所以你要用脚手架的话那索性就不加
|
48
wangyzj 2020-02-20 14:09:31 +08:00
eslint 我记得是没有的
|
49
rain0002009 2020-02-20 14:23:05 +08:00
vue 这种因为一般都是经过 babel 处理一下 不加分号 代码更清晰
egg 一般不会用 babel 的吧 加上分号更严谨 |
50
Hanggi 2020-02-20 14:40:02 +08:00
别争了,加肯定是要加的,这是 js 标准。但是不需要手动加,用工具,自动添加。
|
51
FaceBug 2020-02-20 14:42:24 +08:00
webstorm 不加好像会有一个提示颜色吧,然后一般就加上了。
|
52
66beta 2020-02-20 14:45:03 +08:00
建议采用 airbnb 的 js 规范
|
53
Mutoo 2020-02-20 14:51:52 +08:00
js 标准是建议加,但是 vue 的创史人 youyuxi 不喜欢加,所以他们不建议加。
不加的话会有歧义,例如 return { status: "OK" } 即使用 prettier 或 eslint 也不能正确地自动加上分号,会出现两种结果: return { status: "OK" }; 或 return; { status: "OK" }; |
54
Revenant 2020-02-20 15:34:29 +08:00
然而,对使用分号的人而言,ASI 机制有时会很棘手。例如:
return { name: "ESLint" }; 这个看起来像是个 return 语句返回一个对象文本。然而,JavaScript 引擎将代码解释成: return; { name: "ESLint"; } 事实上,一个分号插入到 return 语句之后,导致(块中的标签文本)下面的代码不可达。 |
55
puilu 2020-02-20 15:38:43 +08:00
配上 eslint,启用保存修复,爱+不+,前端规范乱得跟什么一样。
|
56
Martox 2020-02-20 16:21:24 +08:00
不加分号,老 vue 了
|
57
amundsen 2020-02-20 17:10:13 +08:00
一楼说得对
|
58
amundsen 2020-02-20 17:11:17 +08:00
我自己写已经没有加分号的习惯了,但是注意一些语法插件(lint)执行时可能会出问题。
|
59
redbuck 2020-02-20 17:15:11 +08:00
|
60
lguan 2020-02-20 18:38:07 +08:00
按团队来,我要求加,定 eslint,让 eslintrc 自动加
|
61
pan176 2020-02-20 19:35:05 +08:00
个人角度,加的。
|
62
gzzchh 2020-02-21 05:02:35 +08:00 via Android
习惯性加了 ,然后 jetbrains 提醒我我又一行一行去掉了
|
63
BigFoxGod 2020-02-21 09:10:35 +08:00
团队统一 eslint 规则不加
|
64
nortonlai 2020-03-12 21:32:46 +08:00 via Android
天天加,然后 ctrl+ s 所有分号全部被消失
|