js条件判断语句优化

时间: 2018-04-12阅读: 425标签: 条件

在js中的条件判断,主要用于不同的条件执行不同的动作,我们通常使用的语句如下:

if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码 
if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码
if...else if....else 语句 - 使用该语句来选择多个代码块之一来执行  
switch 语句 - 使用该语句来选择多个代码块之一来执行  

那么在实际开发中,我们如何实现js条件判断语句优化的呢?


1、一个条件推荐用if else或者三元运算

请使用 if....else 语句在条件为 true 时执行代码,在条件为 false 时执行其他代码。 语法如下:

if (条件){
  当条件为 true 时执行的代码
}else{
  当条件不为 true 时执行的代码
}

三元运算符是if else另外一种写法, 条件?成立执行:不成立执行。如果后面的这个不需要写个void 0就可以了,例如:

var a=-1;
a>=0?console.log("正"):void 0;


2、当2个条件是用if...elseif...else...

使用 if....else if...else 语句来选择多个代码块之一来执行。 语法如下:

if (条件 1){
  当条件 1 为 true 时执行的代码
}else if (条件 2){
  当条件 2 为 true 时执行的代码
}else{
  当条件 1 和 条件 2 都不为 true 时执行的代码
}


 3、三个条件及以上时候推荐用switch

当条件层级很多时候,使用if...elseif..elseif......if这类的语句就不利于阅读了,所以多条件推荐使用switch...case来判断。语法如下:

switch(n){
case 1:
  执行代码块 1
  break;
case 2:
  执行代码块 2
  break;
default:
  n 与 case 1 和 case 2 不同时执行的代码
}

工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。 

实例

显示今日的周名称。请注意 Sunday=0, Monday=1, Tuesday=2, 等等:

var day=new Date().getDay();
switch (day)
{
case 0:
  x="Today it's Sunday";
  break;
case 1:
  x="Today it's Monday";
  break;
case 2:
  x="Today it's Tuesday";
  break;
case 3:
  x="Today it's Wednesday";
  break;
case 4:
  x="Today it's Thursday";
  break;
case 5:
  x="Today it's Friday";
  break;
case 6:
  x="Today it's Saturday";
  break;
}

上面的实例来自w3school,我们可以使用数组来简写如下:

var day=new Date().getDay(),
    arr=["Today it's Sunday","Today it's Monday","Today it's Tuesday","Today it's Tuesday","Today it's Wednesday","Today it's Thursday","Today it's Friday","Today it's Saturday"];
console.log(arr[day]);


fly63.com版权所有,内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权,请与小编联系!情况属实本人将予以删除!

广告合作文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯