前端是否有点卷?

2021-11-04 16:25:49 +08:00
 Features
应届生,入职某小厂,前端大概 15 人团队,lint 规则令人发指

1.比如禁止使用 for 遍历一个数组

2.缩进必须要两个空格,不能使用 tab

3.禁止使用字符串与变量进行 + 操作,必须使用``

4.禁止使用三目运算符

......

我觉得程序员也是一种创意工作吧?

现在搞得有点像写八股文

本来有些功能写起来就很费劲,好不容易想到一个办法

或者从 stackoverflow 找到答案,复制下来还不能直接用😂

搞得挺难受的

不知道大家怎么看严苛的 lint 规则的?
6286 次点击
所在节点    问与答
103 条回复
creanme
2021-11-04 19:56:47 +08:00
@cwp374240920 forEach 性能差,感觉 map 并不适用于不需要返回新的数组的遍历。
cwp374240920
2021-11-04 20:06:16 +08:00
@creanme foreach/map/reduce/filter/find 都有明确的使用场景啊....这是数组的原生方法啊...你写前端需要多强的性能去处理数据啊...语义性上清晰便于阅读就是最佳实践了
Torpedo
2021-11-04 20:20:53 +08:00
这不说明还不够卷么?

这种代码风格的要求,稍微成熟的点的代码库都会要求的
sagaxu
2021-11-04 20:21:50 +08:00
互联网有不卷的吗?
henryhu
2021-11-04 20:46:42 +08:00
其他还好,3 目运算多好,用 if else ?太丑了
sickoo
2021-11-04 20:47:09 +08:00
这不也没啥,只是你踩得坑少
statement
2021-11-04 20:56:07 +08:00
我记得大学课本上就写 要慎重使用三目。 简单的很优雅。复杂的就很不直观
jiangshanmeta
2021-11-04 20:56:20 +08:00
开发 eslint 插件搞更严格的 lint 规则的路过
xylitolLin
2021-11-04 21:06:36 +08:00
你这 1 、2 、3 、4 看着也没啥问题啊,多人协作还是需要一点条条框框的
xiaoming1992
2021-11-04 22:05:42 +08:00
lint 肯定要严格啊,#18 直接通不过我的 lint: a = b && 1 || 2 (&& 和 || 不能在一起,至少要用括号括起来)

p.s. 一般这种都有一键 fix 的,无法 fix 的才需要手动修改
gauzung
2021-11-04 22:47:00 +08:00
多人协作开发肯定要 lint
但我个人感觉缩进两格有点太密。。看起来费眼睛
单个三目还好,多个三目嵌套看起来很累
kwrush
2021-11-04 23:43:08 +08:00
团队协作严格 linting 有好处,再不济可以 disable 嘛,和卷有什么关系呢
禁用 for 难以理解,大概是禁用 for-in ?
编辑器可以设置 tab 键为两空格
字符串模板可读性强
禁用三元是指这种吧 a?b:c?d:e
christin
2021-11-05 07:35:18 +08:00
学到个词就赶紧用用
cmdOptionKana
2021-11-05 08:42:22 +08:00
球球了,网络新词知道意思就行,没必要强行使用。
hst001
2021-11-05 08:55:44 +08:00
跟卷一点关系都没
daimubai
2021-11-05 09:07:19 +08:00
因为你不是团队 leader ,所以你只需要管自己舒不舒服。而 leader 则是要让整个团队舒不舒服。我觉得稍微思考下就不难理解这么做的原因,不值得发帖吐槽
zoffy
2021-11-05 09:27:11 +08:00
刚好我踩过这些坑

1. for of 限制通常源于 airbnb 的规则,社区里也很多人吐槽,我赞同这个老哥的跟帖
https://github.com/airbnb/javascript/issues/1271#issuecomment-281716212

解决方法可以复制规则源码到自己的 eslint 配置中,删除 for of 限制
https://github.com/airbnb/javascript/blob/1eadb93e377da1e56c3f91f26610e5d0a00738a9/packages/eslint-config-airbnb-base/rules/style.js#L339

2 、3. 不是什么问题

4. 可能说的是嵌套三目表达式,那确实应该禁止
PerFectTime
2021-11-05 09:34:06 +08:00
Features
2021-11-05 11:17:08 +08:00
@rabbbit 就是 for
for in 遍历数组是有缺陷的,肯定不能用。
Features
2021-11-05 11:18:17 +08:00
@IvanLi127 是这种:
for(let i=0;i<arr.length;i++){
//do something
}

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/813069

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX