QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 2072|回复: 0

[HTML/CSS/JS] 6个规则让你代码结构焕然一新

[复制链接]

等级头衔

积分成就    金币 : 2841
   泡泡 : 1516
   精华 : 6
   在线时间 : 1295 小时
   最后登录 : 2024-11-24

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老

联系方式
发表于 2020-12-16 10:49:45 | 显示全部楼层 |阅读模式
1、注重命名
/ w' r9 ]" z7 Y       为一个事件命名是很困难的。虽然困难但是非常有必要。# o+ Y) u, L- ?0 f
       想象以下,将两个数组合并成一个数组,并生成一个唯一值的数组。那么你会怎么命名它呢?我们也许会这样命名?- z; a- y! |" g6 C  V
  1. function mergeNumberListIntoUniqueList(listOne, listTwo) {
  2.   return [...new Set([...listOne, ...listTwo])]
  3. }
      上面的命名并不糟糕,但是还不是很友好。你可以将一个功能函数拆分为两个功能函数,这样命名更友好和函数复用性更好。
8 ~0 @  C( H2 X: S$ ?  T
  1. function mergeLists(listOne, listTwo) {
  2.   return [...listOne, ...listTwo]
  3. }
  4. function createUniqueList(list) {
  5.   return [...new Set(list)]
  6. }

+ d: Z# o  U: ]1 i0 A2、IF语句简化
8 q. g7 S- P# S       假设我们有下面的代码:
6 h5 ]( b4 Y) n0 {' n1 k8 O
  1. if(value === 'duck' || value === 'dog' || value === 'cat') {
  2.   // ...
  3. }
      我们可以这样解决:& |. @' K+ w; ?+ T
  1. const options = ['duck', 'dog', 'cat'];
  2. if (options.includes(value)) {
  3.   // ...
  4. }
      将乱七八糟的条件判断放到一个变量中存储,比看臃肿的表达式要好很多。3 r8 K3 [- f8 ^7 H0 {" K
3、及早返回0 N$ U  j3 w' Z8 V/ }+ A& G
       有下面的代码:% c: r( \" ~- }, c& K$ s. Q4 v
  1. function handleEvent(event) {
  2.   if (event) {
  3.     const target = event.target;
  4.     if (target) {
  5.       // Your awesome piece of code that uses target
  6.     }
  7.   }
  8. }
      及早返回使得我们的代码更加易读:, \# X1 X+ Y+ G; Z( n" [$ \* K
  1. function handleEvent(event) {
  2.   if (!event || !event.target) {
  3.     return;
  4.   }
  5.   // Your awesome piece of code that uses target
  6. }

) h* C, Q( [% _9 A+ z( t- S9 \4、解构赋值
' W8 {6 w$ a; [" _       在javascript中,我们可以对objects和arrays进行解构赋值。例如:$ F: Z3 g6 A8 I$ M* u
  1. // object 解构赋值
  2. const numbers = {one: 1, two: 2};
  3. const {one, two} = numbers;
  4. console.log(one); // 1
  5. console.log(two); // 2
  6. // array 解构赋值
  7. const numbers = [1, 2, 3, 4, 5];
  8. const [one, two] = numbers;
  9. console.log(one); // 1
  10. console.log(two); // 2
) X$ Y: B. [1 {' I
5、童子军规则
2 a# R2 e: r# V5 R       童子军有一条规则:永远保持离开时的露营比你发现它时更整洁。如果你在地面上发现了脏东西,那么无论是否是你留下的,你都要将它清理干净。你要有意地为下一组露营者改善环境。, K" }" v# s8 l% ?: I
       我们编写代码也是这样子,如果你在代码中发现了脏代码,那么你可以尝试去修改它,即使是一个没有被引用到的变量名。4 e) n, ~, v' Z: K) |; J& z
6、代码风格$ l3 F% F: D0 m" C
      在你的团队中使用一种代码风格,比如限定代码缩进的规范是两空格呢还是四空格;使用单引号呢还是双引号呢;使用同类的一种框架呢,还是流行两种解决方案的框架呢...这样团队中人员接手项目的成本就会降低,开发人员的心里减少排斥感~6 n: w0 d* I$ W0 g( e

4 `; q2 C+ s2 i# S. L! t
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2024-11-25 06:10

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表