博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
6个规则去净化你的代码
阅读量:3958 次
发布时间:2019-05-24

本文共 1443 字,大约阅读时间需要 4 分钟。

1.注重命名

想象以下,将两个数组合并成一个数组,并生成一个唯一值的数组。那么你会怎么命名它呢?我们也许会这样命名?

function mergeNumberListIntoUniqueList(listOne, listTwo) {
return [...new Set([...listOne, ...listTwo])]}

上面的命名并不糟糕,但是还不是很友好。你可以将一个功能函数拆分为两个功能函数,这样命名更友好和函数复用性更好。

function mergeLists(listOne, listTwo) {
return [...listOne, ...listTwo]}function createUniqueList(list) {
return [...new Set(list)]}

2.IF语句简化

假设我们有下面的代码:

if(value === 'duck' || value === 'dog' || value === 'cat') {
// ...}

我们可以这样解决:

const options = ['duck', 'dog', 'cat'];if (options.includes(value)) {
// ...}

3.及早返回

有下面的代码:

function handleEvent(event) {
if (event) {
const target = event.target; if (target) {
// Your awesome piece of code that uses target } }}

及早返回使得我们的代码更加易读:

function handleEvent(event) {
if (!event || !event.target) {
return; } // Your awesome piece of code that uses target}

4.解构赋值

在javascript中,我们可以对objects和arrays进行解构赋值。

例如:

// object 解构赋值const numbers = {
one: 1, two: 2};const {
one, two} = numbers;console.log(one); // 1console.log(two); // 2// array 解构赋值const numbers = [1, 2, 3, 4, 5];const [one, two] = numbers;console.log(one); // 1console.log(two); // 2

5.童子军规则

童子军有一条规则:永远保持离开时的露营比你发现它时更整洁。如果你在地面上发现了脏东西,那么无论是否是你留下的,你都要将它清理干净。你要有意地为下一组露营者改善环境。

我们编写代码也是这样子,如果你在代码中发现了脏代码,那么你可以尝试去修改它,即使是一个没有被引用到的变量名。

6.代码风格

在你的团队中使用一种代码风格,比如限定代码缩进的规范是两空格呢还是四空格;使用单引号呢还是双引号呢;使用同类的一种框架呢,还是流行两种解决方案的框架呢…这样团队中人员接手项目的成本就会降低,开发人员的心里减少排斥感~

转载地址:http://ciozi.baihongyu.com/

你可能感兴趣的文章
Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00
查看>>
大型Web2.0站点构建技术初探
查看>>
机器学习算法汇总:人工神经网络、深度学习及其它
查看>>
解决Spring中AOP不能切入Struts的DispatchAction方法的问题
查看>>
出国以后才知道英语应该怎么学
查看>>
计算机专业权威期刊投稿经验总结
查看>>
如何在三个月内学会一门外语?
查看>>
看看你对Linux到底了解多少?
查看>>
网上看到的:ARM入门最好的文章(转)
查看>>
中国最美情诗100句
查看>>
javascript注册window的onload事件问题研究
查看>>
客户端技术分页控件javascript+css,可用于任何服务器端技术
查看>>
学习Swing 的网站[转]
查看>>
Google App engine 的第一个应用 midispot
查看>>
提问的智慧
查看>>
关于dom4j无法解析xmlns问题及生成非UTF-8字符集乱码问题的解决
查看>>
很好的一篇文章 如果让我重做一次研究生 王汎森
查看>>
保护U盘批处理文件
查看>>
hibernate 自动导入sql 文件import.sql 国际化编码的问题的解决方案
查看>>
第七颗头骨 & 忘魂花 凤凰
查看>>