JavaScript逻辑语句

来源:互联网 发布:网络磕炮文本 编辑:程序博客网 时间:2024/06/05 10:17
前面讲过,学过C的再学JS很容易。事实上,JS的常用语句和C基本一致。

条件语句

和C一模一样,这里就不再赘述了
  • if(condition) { statement; }
  • if(condition) { statement1; } else { statement2; }
  • if(condition1) { statement1; } else if(condition2) { statement2; } else { statement3; }

循环语句

有以下几种
  • for(init; condition; statement) { statements; }
  • while(condition) { statements; }
  • do { statements } while(condition)
  • for(var in object) {statements; }
前三个大家都懂,就不多说。最后一个在C里面是没有的,它表示罗列对象里的属性,或者是数组里的值。举个例子:
[javascript] view plain copy
  1. var array = [1,2,3,4];  
  2. for(a in array) {  
  3.     console.log(a); // 1234  
  4. }  
在对象中的例子:
[javascript] view plain copy
  1. var obj = {  
  2.     attr1: "value1",  
  3.     attr2: "value2"  
  4. }  
  5. for(attr in obj) {  
  6.     console.log("value of "+ attr + " is: " + obj[attr]);   
  7. }  
for.. in的用法跟Python的for .. in..、PHP的foreach的用法都很相近,应该也比较好理解。
循环控制语句有break,continue,label等等,label有违代码规范(和goto差不多),不多阐述,其他两个有过C基础的不难理解

多分支语句

[javascript] view plain copy
  1. for(var i = 0; i < 5; i++) {  
  2.     switch(i) {  
  3.         case 0: {  
  4.             console.log("0");  
  5.             break;  
  6.         }  
  7.         case 1: console.log("1");break;  
  8.         default: console.log("not 0 or 1");break;  
  9.     }  
  10. }  
这种做法不陌生,我们在C中也可以这么做。不同的是,JS中,case后的部分可以是变量或字符串,而C中不行
还有一种用法比较新颖,实用性也比较强
[javascript] view plain copy
  1. for(var i = 0; i < 5; i++) {  
  2.     switch(true) {  
  3.         case below2(i): {  
  4.             console.log("i<2");  
  5.             break;  
  6.         }  
  7.         case between2To5(i): {  
  8.             console.log("2 <= i < 5");  
  9.             break;  
  10.         }  
  11.         defaultbreak;  
  12.     }  
  13. }  
  14. function below2(i) {  
  15.     return i < 2;  
  16. }  
  17. function between2To5(i) {  
  18.     return i >= 2 && i < 5;  
  19. }  
这样就可以在switch语句中加入表达式了,能这么做的缘由是JS的多分支语句是判断switch的参数和case的部分是否全等。这样就等效于if(below2(i) === true)了。
0 0
原创粉丝点击