博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《编写可维护的JavaScript》——JavaScript编码规范(二)
阅读量:6614 次
发布时间:2019-06-24

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

昨天是我偶像生日,现在整个人都还好兴奋啊O(∩_∩)O~  闲话少说,让我先发篇随笔留念一下^_^

正文分割线//

命名

只要写代码,都会涉及变量和函数,因此变量和函数命名对增强代码可读性至关重要。JavaScript语言的核心ECMAScript,即是遵照了驼峰式大小写(Camel case)命名法。Camel case在这里被作者用来特指“小驼峰式大小写”(即首字母小写)命名法,Pascal case则特指“大驼峰式大小写”(即首字母大写)命名法。

小驼峰式大小写命名法是由小写字母开始的,后续每个单词首字母大写,比如:var thisIsMyName;

变量和函数

变量名应当总是遵循驼峰大小写命名法,并且命名前缀应当是名词。

而函数名前缀应当是动词,这样就可以让变量和函数区分开来。

//好的写法var count = 10;var myName = "Nicholas";var found = true;//不好的写法:变量看起来像函数var getCount = 10;var isFound = true;//好的写法function getName(){      return myName;}//不好的写法:函数看起来像变量function theName(){      return myName;}

 通常来讲,命名长度应该尽可能短,并抓住要点。尽量在变量名中体现出值得数据类型。比如,命名count,length和size表明数据类型是数字,而命名name,title和message表明数据类型是字符串。但用单个字符命名的变量诸如i、j和k通常在循环中使用。使用这些能够体现出数据类型的命名,可以让你的代码容易被别人和自己读懂。

要避免使用没有意义的命名。那些诸如foo,bar和tmp之类的命名也应当避免,当然开发者工具箱里还有很多这样可以随拿随用的名字,但不要让这些命名承载其他的附加含义。对于其他开发者来说,如果没有看过上下文,是无法理解这些变量的用处的。

对于函数和方法命名来说,第一个单词应该是动词。这里有一些使用动词常见的约定。

动  词 含  义
can 函数返回一个布尔值
has 函数返回一个布尔值
is 函数返回一个布尔值
get 函数返回一个非布尔值
set 函数用来保存一个值

 

 

 

 

 

 

尽管这些函数命名规则没有归纳入当下流行的编程风格中,但在很多流行的库中,JavaScript开发者会发现不少这种“伪标准”。

jQuery显然并没有遵循这种函数命名约定,一部分原因在于jQuery中方法的使用方式,很多方法同时用作getter和setter。比如,$("body").attr("class")可以取到class属性的值。尽管如此,我们还是推荐使用动词作为函数名前缀。

常量

在ECMAScript 6 之前,JavaScript中并没有真正的常量的概念。然而,这并不能阻止开发者将变量用作常量。为了区分普通的变量和常量,一种通用的命名约定应运而生。这个约定源自于C语言,它使用大写字母和下划线来命名,下划线用以分隔单词,比如:

var MAX_COUNT = 10;

var URL = "http://www.nczonline.net/";

需要注意的是,这里仅仅是应用了不同命名约定的变量而已。

构造函数

在JavaScript中,构造函数只不过是前面冠以new运算符的函数,用来创建对象。

构造函数的命名遵循大驼峰命名法。这样做可以将构造函数从变量和普通函数中区分出来。构造函数的命名也常常是名词,因为它们是用来创建某个类型的实例的。

<!--

作者:

出处:
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。谢谢合作。

-->

转载于:https://www.cnblogs.com/beginner2014/p/5395265.html

你可能感兴趣的文章
jquery中data函数的用法示例
查看>>
巧用strtotime函数计算日期
查看>>
JVM中java对象的生命周期
查看>>
mysql 查看连接数,状态
查看>>
JFinal集成YUI Compressor压缩合并JS和CSS
查看>>
windows下的Oracle卸载
查看>>
sqlserver查看死锁的存储过程
查看>>
在VirtualBox中的CentOS 6.3下安装VirtualBox增强包(GuestAd...
查看>>
Java开发中的23种设计模式详解(转)
查看>>
我的友情链接
查看>>
组策略18招
查看>>
关于Android中的数据存储
查看>>
Tomcat配置日志生产功能
查看>>
js的自执行函数
查看>>
移植Qt与Tslib到X210开发板的体会
查看>>
Nginx + webpy 和FastCGI搭建webpy环境
查看>>
new static 跟 new self 区别
查看>>
PLSQL Develope连接oracle数据库配置
查看>>
使用JdbcTemplate过程中使用到多个参数和like模糊
查看>>
解决eclipse中无法删除Tomcat服务器中的项目,报maven is required and cannot be removed from the server错误情况...
查看>>