如何让你的代码变得更优雅?这些代码规范和技巧必须知道(进阶必备

// 缩进注释,和它所描述的段落层级一致

// .text() 防止xss注入

$(‘#sl’).text( msg_text );

};

// 函数返回随机数

get_rangdom = function ( num_arg ){

return Math.random() * numn_arg;

};

// 初始化值

x = get_random( 10 );

y = get_random( 20 );

r = get_random( 360 );

// 添加空白,对齐相似的元素,相似的语句更容易阅读

x += 10 + num;

y -= 20 - num;

2.3 换行要一致

  • 在运算符的前面换行,开发者检查更加方便

  • 把后续的语句缩进一个层次,比如使用两个空格

  • 在逗号分隔符的后面换行

  • 方括号或者括号单独占一行。清楚地表明这是语句的结尾,不会迫使读者横向扫寻分号

// 将运算符放在左边,排成一列

let str = ‘我知道你也在向我靠近,’

  • ‘星河万顷都是你的见面礼。’

  • ‘所以我也走向了你,’

  • ‘暮色千里皆是我的回礼。’

  • ‘今夜星光月夜皆归你,我也归你~’

// 方括号单独占一行,下一条语句就容易识别了

// 使用尾部逗号,更容易维护

let addressArr = [

‘湖南省’, ‘湖北省’, ‘广西省’,

‘江西省’, ‘江苏省’, ‘内蒙古自治区’,

‘台湾省’, '澳门, ‘香港’,

];

在这里插入图片描述

3. 命名规范


3.1 变量

命名规则

  • 变量名使用a - z、A - Z、0 - 9、下划线和$符号

  • 变量名不要以数字开头

  • 语义化(看其名,知其意)

作用域

  • 当变量作用域是整个模块时使用驼峰式(模块名字空间的所有地方都可以访问该变量)

  • 当变量作用域不是整个模块时使用下划线 (模块名字空间内的某个函数的局部变量)

  • 确保所有模块作用域内的变量至少有两个音节,这样作用域就会很清晰(例如下:)

  • 用户中心 ⇒ userCenter

  • 商品列表 ⇒ goodsList

  • 消息通知 ⇒ messageInfo

  • 再来一组例子:

| 变量初始名 | 局部作用域 | 模块作用域 |

| — | — | — |

| str | direction_str | directionStr |

| id | goods_id | goodsId |

| msg | user_msg | userMsg |

  • 全局变量用 const 定义,常量性质,字母全部大写(尽量少定义)

3.2 命名空间

  • 早期的JavaScript代码比较简单,单独在一张页面上使用,所以大部分时间不需要考虑命名空间的问题,使用全局变量,而不会有什么影响。

  • 但是随着JavaScript应用的蓬勃发展和第三方类库的普遍使用,全局变量的数据可能会急剧上升

  • 地域之门从此便开启了。(比如,当两个代码库声明了相同的全局变量时)

  • 使用单一的全局函数,把其他所有变量的作用域限制在该函数里面,就可以极大地减少这种问题

// 模拟一个第三方库 => jQuery

(function(window){

// 此变量只会在此区域生效,使用完之后垃圾回收机制自动回收

// 不会污染全局变量

let jquery = {};

})(window)

  • 命名空间的细粒度划分

// 在 jquery.js 中

let jquery = (function () {

// some code here

}());

// 在 jquery.dom.js 中

let jquery.dom= (function () {

// some code here

  • 22
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值