如何写好JavaScript
Apr 29, 2017 pm 03:49 PM前言
在实际工作中,我们应该经常会看到一些功能上没有问题,但编码风格和规范却十分糟糕的代码,这往往会让人不敢再往下阅读,甚至会影响阅读者一天的心情。这些代码不仅不易阅读,而且难以维护,它们一般会出自刚入门的编程新手,也会出自工作了好几年的老程序员手下。因此本文的目的在于帮助那些没有养成良好的编码风格,缺乏相应编码规范意识的JavaScript学习者们改善他们的编码形象。
编码形象
以上我提出了编码形象的概念,我个人认为:
1 |
|
一个良好的编码形象就等于一个穿着得体的青年,对于程序员来说这是同行了解你优秀能力的最直接最简单的方式。
我们来看一下一段糟糕的编码形象:
1 2 3 4 5 6 7 8 9 10 11 |
|
上方代码整体缩在了一起,缺乏规范意识,阅读体验很差,不忍直视。
再来看一段良好的代码形象:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
上方的代码是不是感觉舒服多了?
由此可见养成一个良好的编码形象是至关重要的,而本文主要讲解的是基于JavaScript的编码形象,即基于JavaScript的编码风格和编码规范。
那么什么是编码风格,什么是编码规范,两者的区别又是什么?
编码风格
首先编码风格既然是风格,就没有对错之分。就好比每个人的穿着打扮不同,有的人穿的比较得体,有的人穿的比较随意而已。
而在JavaScript编码风格中,也有一套比较得体的风格,尤其在团队开发中,我们不能随意的书写属于自己的风格。
下面就列举几种随意的编码风格,并将其与良好的编码风格进行对比。
1.合理注释
1 2 3 4 5 6 7 8 9 |
|
1 2 3 4 5 6 7 8 9 10 |
|
2.合理间隔
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 |
|
3.合理缩进
1 2 3 4 |
|
1 2 3 4 |
|
4.合理空行
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 8 |
|
5.合理命名
1 2 3 4 5 6 7 |
|
1 2 3 4 5 6 7 |
|
6.合理声明
1 2 3 4 5 6 |
|
1 2 3 4 5 6 |
|
7.合理结尾
1 2 3 4 5 6 |
|
1 2 3 4 5 6 |
|
以上主要列举了7个比较常见的编码风格的例子进行了比较,在推荐的写法和不推荐的写法中两者并没有对错之分,只是推荐的写法相比较而言更容易阅读和维护,更适用于团队开发,也是良好编码形象的体现。
编码规范
对于编码规范,既然是规范,那我们就应该按照一定的规则来编写。随意编写违反编码规范的代码,可能会导致程序的出错和潜在的bug,因此其相对于编码风格来说应该更加严谨,也有人会把编码风格包含在编码规范之中。
下面就列举几个常见的实例代码:
1.比较参数
1 2 3 4 5 6 7 8 |
|
1 2 3 4 5 6 7 8 |
|
2.包裹if语句
1 2 3 4 5 |
|
1 2 3 4 5 6 |
|
3.慎用eval
1 2 3 4 |
|
1 2 3 4 |
|
4.判断类型
1 2 3 4 |
|
1 2 3 4 |
|
5.检测属性
1 2 3 4 5 6 7 8 |
|
1 2 3 4 5 6 7 8 |
|
以上主要列举了5个常见的编码规范的例子,合理地规范自己的代码能够很大程度上减少不必要的维护成本和潜在的bug风险,对于JavaScript学习者来说应该铭记于心。
结语
“程序是写给人读的,只是偶尔让计算机执行一下。”我们不能为了贪图一时的方便而亲手毁了自己的代码形象,这会给他人和整个项目带来不必要的麻烦。
本文内容参考自《编写可维护的JavaScript》一书。
Atas ialah kandungan terperinci 如何写好JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk melaksanakan sistem pengecaman pertuturan dalam talian menggunakan WebSocket dan JavaScript

Bagaimana cara menulis copywriting TikTok dengan baik? Bagaimana untuk menambah salinan?

WebSocket dan JavaScript: teknologi utama untuk melaksanakan sistem pemantauan masa nyata

Bagaimana untuk melaksanakan sistem tempahan dalam talian menggunakan WebSocket dan JavaScript

Cara menggunakan JavaScript dan WebSocket untuk melaksanakan sistem pesanan dalam talian masa nyata

Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP

JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap

Bagaimana untuk menggunakan insertBefore dalam javascript
