JavaScript快速入门(三)——JavaScript语句
JavaScript基本语句
基本概述
a = "1234" // 这样是不会报错的,但不建议 b = "1234" a = "1234"; b = "1234"; // 加上分号,那么就可以将代码放到同一行
赋值语句
a = "1234";
如果是多个赋值语句串的话,则从右依次向左赋值,例如
a = b = "1234"; b = "1234"; a = b;
a = 5 + 5;
右值也可以是函数的返回值,例如
function add(num1, num2) { return num1 + num2; } a = add(5,5);
注意,若函数没有返回值,则会赋值为undefined
函数执行式
function add(num1, num2){ return num1 + num2 } add(add(5, 5), 5); // 15
语句块
JavaScript逻辑语句
条件语句
- 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里面是没有的,它表示罗列对象里的属性,或者是数组里的值。举个例子:
var array = [1,2,3,4]; for(a in array) { console.log(a); // 1234 }
在对象中的例子:
var obj = { attr1: "value1", attr2: "value2" } for(attr in obj) { console.log("value of "+ attr + " is: " + obj[attr]); }
for.. in的用法跟Python的for .. in..、PHP的foreach的用法都很相近,应该也比较好理解。
多分支语句
for(var i = 0; i < 5; i++) { switch(i) { case 0: { console.log("0"); break; } case 1: console.log("1");break; default: console.log("not 0 or 1");break; } }
这种做法不陌生,我们在C中也可以这么做。不同的是,JS中,case后的部分可以是变量或字符串,而C中不行
for(var i = 0; i < 5; i++) { switch(true) { case below2(i): { console.log("i<2"); break; } case between2To5(i): { console.log("2 <= i < 5"); break; } default: break; } } function below2(i) { return i < 2; } function between2To5(i) { return i >= 2 && i < 5; }
这样就可以在switch语句中加入表达式了,能这么做的缘由是JS的多分支语句是判断switch的参数和case的部分是否全等。这样就等效于if(below2(i) === true)了。