当前位置:网站首页>4个编码好习惯,让你的代码更优雅
4个编码好习惯,让你的代码更优雅
2022-07-18 17:06:00 【老九君】
前
言
/ 2022.7.14
代码之美,不仅仅在于外观, 丑陋的代码可能会给用户和维护它的人带来丑陋的体验,今天分享几个针对初学者实用且简单的编码细节,大家可以此发散,用于以后学习和工作使用。
01
console.log({name})
许多人都喜欢在我们有一个变量名需要在控制台打印时这样写:
就写法本身来说,是不存在问题的。
但从便利的角度来看:这段代码长度过长,导致字符串无法自动补全,越是长的变量名,这种情况就更加明显。
其次,这种写法的表现非常不直观,如果name是一个对象,展开时占位太高会导致找不到开头的name。
所以换一种写法:
其目的是一样的,但简洁度和可读性都提升了一个档次。虽然简单,但成效却很大。
02
配置表取代硬编码
根据具体情况场景来分析,假设一个系统,我们设置管理员为1,普通员工为2,超管为3 。
他们三个的权限都不相同,其中1仅能“浏览查看”列表,2在此基础上增加“新增”和“编辑”功能,3再增加“删除”功能。
我们再来看看具体的代码:
从上面可以看出,光这一小段代码里就有许多写死的“1、2、3”。也许代码刚写好时不会暴露出什么问题。
但随着后期页面越来越多,就会变成这些写死的“1、2、3”漫天飞舞的情况。
更有这种常见情况,突然需求发生了变化,超管的字段要从3调整到5或者其他。
这时候再来看代码,好家伙,漫天飞舞的“1、2、3”,到处找,一处处改,在傻眼中可能想回去敲死当初的自己。
一段优秀的代码应该像下面演示一样:
通过这段代码我们不难发现,问题就出在魔术字符串上,我们要学会及时消除它。
【常见方法】像上面一样,把它写成一个变量,消除耦合,这样在以后的维护过程中就会比较便利和简单。
03
return取代if…else
照例我们先来看一段实际场景下的代码:
是不是没有看出什么问题呢?确实,这段代码逻辑是没有问题的。但就跟上一种情况类似,如果今后出现了需要增删修改的情况时,就会变得复杂和费劲。
可能增加if条件还好,只是越来越多的if else会让人几乎产生阅读障碍。
但是如果是要删除一个条件,那可真是“强人所难”了,不仅需要找到if else对应的 {},还没有办法直接选中代码进行一个删除的大动作。
是不是很苦恼!面对这种情况,我们其实可以参考下面的代码来编写:
这些修改都很简单,但就是因为简单反而被很多人忽略忘记。熟练地使用之后,对于今后的代码编写是有很大的帮助的。
04
JS隐式类型转换
最后一种方法就是利用JS不同type的变量可以相互转化的特性,使代码在类型转换时更加简洁。
快速转换Number类型:
快速转换Boolean类型:
快速转换String类型:
05
总结
好了,上述四种方法就是今天分享的全部内容了,但除此之外其实还有很多常见的好方法和好习惯,等大雄慢慢整理……
学习编程之路永无止境,光说不练永远也成不了气候,找到合适的方法才能让学习和应用少走弯路,更加便捷。
广告时间
名师坐镇,经过十几年沉淀的课程,将所有经验教训倾囊相授,这个月全新升级的Java、前端、测试暑期班即将正式开课,现在预订立享定金优惠。
详情戳 ↓ ↓↓
点一下阅读原文了解更多资讯
边栏推荐
- OPPO 与欧冠达成全球合作,或推出联名科技产品
- LeetCode笔记:Weekly Contest 302
- Tensorflow performance tuning
- 多云已成现实,如何更好地实现多云管理?
- Mysql的基本使用
- [cloud based co creation] deepen Huawei cloud operator ecological cooperation and accelerate the leapfrog development of ecological partners
- QT OpenGL(二 GLSL语法熟悉)
- ENDC相关概念扫盲
- Basic use of MySQL
- 百亿债务无解,乐视员工却过上了“神仙日子”
猜你喜欢
随机推荐
Is there any age limit for opening an account? Is it safe to open a stock account by mobile phone?
Mysql的基本使用
Basic principles to be understood in electrical engineering
mysql-排序orderby
表链接以及面试题
R语言ggplot2可视化:使用ggpubr包的ggarrange函数将多幅图像组合起来、使用common.legend参数指定组合图的图例
Find the day of the year on which the date is located
Four simple examples teach you how to improve user experience through user behavior records
OPPO 与欧冠达成全球合作,或推出联名科技产品
[cloud based co creation] deepen Huawei cloud operator ecological cooperation and accelerate the leapfrog development of ecological partners
万物皆可Cassandra:HUAWEI Tag背后的神仙数据库
哪家公司适合期货开户?请问2022年有哪些安全可靠的期货平台?
FIR 滤波器设计
CRM实施的三大误区:缺乏战略,缺乏认同感,唯技术至上
R language ggpubr package ggarrange function multiple image combination, annotate_ Figure add annotation, annotation, annotation information and bottom parameters to the combined image, and add annota
Technical writing guide for programmers to leave work early
ASP. Net cashier management system source code
2-路由的配置与使用
让程序员早点下班的《技术写作指南》
“小镇做题家”为何被官媒嘲讽?