JavaScript快速入门笔记(5):语句
本系列随笔是本人的学习笔记,初学阶段难免会有理解不当之处,错误之处恳请指正。转载请注明出处: https://www.cnblogs.com/itwhite/p/12218032.html。
if 语句
格式:
if (condition) { // ... } else if (condition) { // ... } else { // ... }
for 语句
示例:
// 遍历数字列表 for (var i = 0; i < 10; i++) { console.log(i); } // for-in 语句遍历对象属性列表 var person = { name: "Jack", gender: "male", age: 23 }; for (var attr in person) { var value = person[attr]; console.log(attr + ": " + value); }
while、do-while 语句
格式:
while (condition) { // ... } do { // ... } while (condition);
switch 语句
格式:
switch(expression) { case x: // ... break; case y: case z: // 多个 case 可以连续 // ... break; default: // ... }
需要注意的是,swtich 语句中 表达式 与 case 值的比较是通过 “===” 操作符来比较的,因此两者的值和类型都必须相同才会匹配成功。例如:
function test(x) { switch (x) { case 123: console.log("This a number 123"); break; case "123": console.log("This is a string '123'"); break; default: console.log("Unknown value: " + x); break; } } test(123); // This a number 123 test("123"); // This is a string '123' test(456); // Unknown value: 456
continue、break语句
格式:
// 同 C/C++ 语言 continue; break; // 类似 Perl 语言中的 next / last 语句 continue labelname; break labelname;
示例:
// 示例一:continue labelname; 只能用在循环语句中 var i = 1; next: while (++i < 100) { for (var j = 2; j < i; j++) { if (i % j == 0) { continue next; } } console.log(i); } // 示例二:break labelname; 可以用在循环语句中,也可以不用在循环语句中 var foo = []; list: { foo.push('Bob'); foo.push('Jack'); break list; // continue 不能用在这里,而必须用在循环语句中 foo.push('Lucy'); // here is unreachable }
throw、try-catch-finally 语句
示例:
// throw 示例 function foo(x) { if (x < 1) { throw "x is less than 1"; } } try { foo(0); } catch (err) { console.log(err); // 输出:x is less than 1 } // try-catch 示例 try { bar(); // bar()函数未定义 } catch (err) { // 异常对象都包含 name 和 message 属性 console.log(err.name); // 输出: ReferenceError console.log(err.message); // 输出: bar is not defined } finally { // finally 是可选部分 console.log('I will always be executed'); }
debugger 语句
debugger 语句仅用来在程序中设置一个断点,当程序执行到此处时将会以调试模式运行。
with 语句
在对象嵌套层次很深时,使用 with 语句来临时扩展作用域链,可以简化代码书写(但是不推荐使用),格式:
with (object) { // ... 这里可以直接使用 object 中的属性名 }
示例:
var jack = { gender: "male", age: 23, parents: { father: { name: "Bob", age: 49 }, mother: { name: "Linda", age: 45 } } }; with (jack.parents) { console.log(father.name); // Bob console.log(mother.name); // Linda }
注意:在严格模式中是禁止使用 with 语句的,即使在非严格模式下也不推荐使用 with 语句,所以应尽可能避免使用它。
完。