源码时代前端干货分享|JavaScript编程优化,超强入门必备技能!-创新互联
一、按强类型风格定义变量
大家要知道js是一种弱类型语言,定义变量的时候不要太随意,大多数初学者定义变量时,只是声明变量而没有赋值,这样就显得太随意了
声明变量的时候,一定要指明变量的类型,告诉解析器,你要声明变量的类型,不要让他去猜
//2. 定义变量
let odd, //奇数个数
even, //偶数个数
sum,//总和
avg//平均值
上面这种就是不友好的代码,应该改为
//2. 定义变量
let odd = 0, //奇数个数
even = 0, //偶数个数
sum = 0,//总和
avg = 0//平均值
这样指明类型,方便其他人阅读,知道该变量保存什么类型的值
注意:
1.也不要随意修改变量的类型,比如上面明明是保存一个数字,下面又保存一个对象,这就让人感觉到很困惑,不知道该保存什么值===这种做法不提倡
2.函数返回值也应该确定类型
function getPrice(count) {
if (count < 0) return "";
else return count * 100;
}
上面函数就没有确定类型,一会字符串,一会数字,都不知道结果该不该参与其他功能运算
function getPrice(count) {
if (count < 0) return -1;
else return count * 100;
}
小于0,返回-1,这种就把两个返回值的类型统一化
二、避免使用==
1.编码习惯不同,大多数人喜欢使用== 而不是===,因为==写起来比较简单点,少了一个=,但是在使用==在JSLint检查的时候是不通过的
if(a == b){}
在JSLint下会输出:Expected ‘===’ and instead saw ‘==’,所以最好使用===
2.使用==还有可能会出现一些不好的现象,对后期代码有一定影响
null == undefined //true
'' == '0' //false
0 == '' //true
0 == '0' //true
'' == 0 //true
new String("abc") == "abc"//true
new Boolean(true) == true //true
true == 1 //true
以上用===出现的结果都为false,这样才比较合理
三、合并表达式
如果用1句代码就可以实现5句代码的功能,那往往1句代码的执行效率会比较高,并且可读性可能会更好
1.用三元运算替换if-else
if(a>10){
return 1
}else{
return 0
}
改写:
return a>10 ? 1 : 0
2.使用连等( 从右向左运算 )
let sum = count = odd = even = 0;
3.自增 ( 利用自增也可以简化代码 )
console.log( ++a );
平常些代码都必须要注意这些,下一节继续讲解ES6编程规范
(本文由源码时代技术老师撰写,转载请注明出处)
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前标题:源码时代前端干货分享|JavaScript编程优化,超强入门必备技能!-创新互联
文章来源:http://myzitong.com/article/cshjsj.html