合理利用JavaScript的条件运算符

原创
2015/01/08 15:29
阅读数 316

        在最近的项目中要使用到一个格式化文件大小的算法,于是不假思索写了如下代码:

function formatSize(size){
       if(size<1024){
           return  size+"B";
       }else if(size <1048576){
           return  parseFloat(size/1024).toFixed(2)+"KB"
       }else if(size <1073741824){
           return  parseFloat(size/1048576).toFixed(2)+"MB"
       }else {
           return  ">1GB"
       }
}

        一共写了11行代码,那么是不是可以精简一下呢?想到对于纯粹的求值操作可以使用三目运算符号,代码修改如下:

function formatSize(size){
    return size<1024?size+"B":size<1048576?parseFloat(size/1024).toFixed(2)+"KB":size<1073741824?parseFloat(size/1048576).toFixed(2)+"MB":">1GB";
}

       效果相当明显,同样的功能用三目运算符仅3行代码就实现了所有功能,而且代码更干净。

       总结(参照以上示例代码):

              使用三目运算符的优势:精简代码,减少了解释器所需要解析的代码行数。从这个意义上来讲,合理使用三目表达式能够帮助我们优化前端代码。

              使用三目表达式的坏处:代码易读性差,不如使用if语句明了。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部