我的前端规范——JavaScript篇
相关文章
简书原文:https://www.jianshu.com/p/5918c283cdc3
我的前端规范——开篇:http://www.cnblogs.com/shcrk/p/9271561.html
我的前端规范——HTML篇:http://www.cnblogs.com/shcrk/p/9271613.html
我的前端规范——CSS篇:http://www.cnblogs.com/shcrk/p/9271608.html
我的前端规范——JavaScript篇:http://www.cnblogs.com/shcrk/p/9271620.html
大纲
前言
1、命名规范
2、编码规则
前言
规范对于一个项目来说是很重要的,统一的规范对代码的一致性、项目的质量、工作的协调都有很大的帮助,而且有时候可以规避很多意料不到的错误。
当然,规范是死的,人是活的。我总结的前端规范是我认为对我来说比较适合的,我又认可的,所以我能比较好的接受和使用。但是,不同的团队,不同的项目需要遵守的规范也许就是不一样的。规范的作用是让项目的代码看起来更有统一性,让团队的协作更方便,因此,根据具体的情况制定统一的规范才是最合理的,而这里我给出的也只是我认为比较符合我风格和习惯的,至于具体的规范还是要依据具体的情况来总结制定。
单独写成一篇的话篇幅很大,因此我会将我的总结写成:开篇、css、html、js四篇,让有需要的读者能够更方便的查找到想要的知识。
1、命名规范
1.1、文件命名可读性强
文件夹、文件的命名与命名空间应能代表代码功能,可读性强。
1.2、函数命名
驼峰命名方式,函数名字应体现出该函数的作用
function funName() {}
1.3、常量
大写
var VARIABLENAME
1.4、变量
驼峰命名
变量名应体现出该变量的内容
通过加下划线体现其局部变量的含义,如 let _name;
var variableName
2、编码规则
2.1、排版缩进
采用统一的缩进方式排版代码。缩进必须是软tab(用空格字符)。(这里的tab的要求是4个空格)
2.2、关键词、条件括弧后面使用空格;运算操作符号两侧使用空格;语句分割符‘,’后面使用空格
var name[空格]=[空格]value;
if[空格](a,[空格]b) {
}
2.3、左大括号"{"可以居行尾,也可写在下行首(独自一行);右大括号"}"单独占一行,居行首
if (a && b) {
}
------------------------
if (a && b)
{
}
2.4、句末必须用分号结尾
var fn = function () {
};//这里没有分号的话,脚本解析器会报错!!!
(function () {
alert(1);
})();
2.5、单行过长应在适当位置予以换行,增强可读性
if 语句括号中的条件若过多过长,应予以折行;折行后,||、&& 等符号应与 “(” 后的第一个字母纵向对齐
if (condition1
&& condition2
|| condition3) {
}
2.6、if、while、for、do语句的执行体总是用"{"和"}"括起来,即使在其结构体内只有一条语句
if (s==100) {
alert('shit!');
}
2.7、语法意义相互独立的代码将用空行分隔
a++; b++; //!!!避免同一行书写两个表达式
if (a > b) {
value = a; //行间不用空行间隔
} var variableName = value; //与上一代码行使用空行间隔
最新文章
- React学习——ListView组件
- linux下打包命令的使用
- Mysql查询比较
- 用Java实现一个通用并发对象池
- javaSE复习总结
- So Easy-Ntp嵌入式软件移植
- JeeSite数据分页与翻页
- 一个很变态的SQL
- 【Mybatis】MyBatis之动态SQL(六)
- 《Office 365开发入门指南教程》正式上线,限时优惠和邀请分享推广
- 精确率、准确率、召回率和F1值
- TCP/IP 笔记 - 传输控制协议
- bat、sh等批处理文件(脚本文件)
- 用PowerDesigner建立概念模型的问题:不能创建相同字段名的关键字段
- [LeetCode] 153. Find Minimum in Rotated Sorted Array_Medium tag: Binary Search
- VIM 如何使用系统的剪切板
- VS中sln和suo的区别
- [Java学习] Java包装类、拆箱和装箱详解
- opencv-python教程学习系列6-用滑动条做调色板
- 创建一个子进程---vfork
热门文章
- [置顶]
 Docker学习总结(3)——Docker实战之入门以及Dockerfile(三)
- POJ——T 2796 Feel Good
- 利用hibernateTemplate进行最简单的分页
- Elasticsearch5.0.1 + Kibana5.0.1 + IK 5.0.1
- 洛谷 P2679 子串
- HDU 1007 Quoit Design 平面内最近点对
- AJAX - 封装AJAX GET 数组join( )方法 键值对取value POST请求参数注意点
- BZOJ4196: [Noi2015]软件包管理器(树链剖分)
- BZOJ2002: [Hnoi2010]Bounce 弹飞绵羊(LCT)
- JS实践与写博客-序