说几条写JavaScript的基本规范

1)减少全局污染

javascript使用function来管理自己的作用域,定义在函数内的变量对外是不可见的。对于javascript的执行环境来说一般都有一个全局对象,在所有的函数外可以用this来指引,例如在浏览器端是window。当在全局执行环境下定义过多的变量会造成很多问题,自己定义的变量被其他人定义的同名变量覆盖掉,或者你未来定义的变量把你过去定义的同名变量也覆盖掉(同名变量覆盖);过多的全局变量放在执行栈里还会造成内存的浪费

(1)声明变量忘记var-----使得该变量是一个全局变量,有可能其他地方修改覆盖它或者将其他地方的变量覆盖

做法:所有的变量都使用“var”,并且尽量都声明在函数体的头部,这样一目了然

(2)变量名提升-----javascript中函数内所有使用var声明的变量都会提升到函数体头部

做法:在函数体内所有的var声明的变量都拿到函数体顶部,以免造成不必要的错误

(3)for循环----在for循环里面打算延时输出每一个i的值,但最后输出的值都一样

for(var i =0;i<3;i++){
   setTimeout(function(){console.log(i)},1000)
}

最后输出3个值都是3

如果myarray是读取的DOM的节点,那么每一次循环都要去DOM里选取节点再做判断,非常影响性能

for (var i = 0; i < myarray.length; i++) {
     //logic
}

做法:将DOM节点的长度用一个变量缓存

for (var i = 0, max = myarray.length; i < max; i++) {
   // logic
}

(4)用"=“代替”"-----前者是严格判断,后者会提前进行隐式的类型转换

(5)统一缩进大小,任何用花括号括起来并换行的都进行缩进

(6)花括号----{}

for循环或者if判断等,即使只有一行,也要换行并用{}括起来

(7)命名规则

构造器函数首字母大写;变量用驼峰式;常量全用大写字母;私有函数用下划线开头

(8)写注释

你写的代码别人不一定看得懂,你写的将来你也不一定轻易能看懂,所以良好的注释习惯可以事半功倍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值