前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【青训营】写代码应该关注什么

【青训营】写代码应该关注什么

作者头像
大熊G
发布2022-11-14 16:52:23
3460
发布2022-11-14 16:52:23
举报

theme: channing-cyan

写代码最应该关注什么

写代码应该有一些原则,需要考虑代码的风格和效率,如果团队一起写的话还要考虑约定,最后要考虑我们的使用场景和应该如何设计。

风格

在团队中,可能每个人的风格都不一样,有的人喜欢结尾用分号,有的人不用分号,还有缩进问题,有人喜欢用空格,有人喜欢用tab,tab缩进也有设置的4个字符有2个字符的。

其实风格没有什么优劣之分,但是在团队中应该注重风格的统一,我们可以使用ESLint来统一进行分风格的约束。

效率

我们在写代码的时候有时候是可读性和效率二者不可兼得,这就需要根据我们的业务场景来进行判断。这个也没什么优劣之分,只不过是取舍问题了。

left-pad事件

当年在GitHub上有很火的事件,left-pad开发者收回了它的开源代码,当时这个npm包很多大型项目都在用,我们来说说这个事情的槽点。 这个left-pad只有十一行代码

代码语言:javascript
复制
module.exports = leftpad;
function leftpad (str, len, ch) {
  str = String(str);
  var i = -1;
  if (!ch && ch !== 0) ch = ' ';
  len = len - str.length;
  while (++i < len) {
    str = ch + str;
  }
  return str;
}
1.npm模块粒度

我们看到上面的模块,就十一行代码,但是非常多的人在用它,放到今天其实我们是很难理解为什么这么多人在用。因为当年的打包工具不是很灵活,比如在模块里面引入了几个api,我们只想用这几个api,当时这个是不可以的,只能全部打包。

2.代码风格

这个代码的风格其实可读性很好,on的算法效率也挺好的,我们也可以有改进的空间,可以是代码更简介,效率更高效。

3.代码质量/效率

代码语言:javascript
复制
// leftpad优化
    function leftpad(str,len,ch = ' '){
        str = " " + str;
        const padlen = len - str.length;
        if(padlen <= 0){
            return str;
        }else{
            return (" " + ch).repeat(padlen) + str;
        }
    }
    console.log(leftpad(1,8));

MDN里面也有一个示例 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat

image.png
image.png

最后我们还可以使用这个方法来进行优化。

代码语言:javascript
复制
 var rpt = " ";
 do {
 rpt += srt;
 str += str;
 count &amp;= count -1;
 } while(count);

一般我们用这个不会太经常使用,没必要做过度优化。最后还是返回最上面所说的,我们一定要根据场景设定好我们的代码。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • theme: channing-cyan
  • 写代码最应该关注什么
    • 风格
      • 效率
        • left-pad事件
          • 1.npm模块粒度
          • 2.代码风格
        • 3.代码质量/效率
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档