重新巩固JS(三)——JavaScript语句

栏目: JavaScript · 发布时间: 5年前

内容简介:重新巩固JS系列,都是比较基础的东西,可以进行查漏补缺,很快看完,这是第三篇。注意:一般情况下,我们在每个case语句后都要加上注意:在

重新巩固JS系列,都是比较基础的东西,可以进行查漏补缺,很快看完,这是第三篇。 其他JS重新巩固系列

1. 条件语句

1.1 if else语句

//当条件为真时,执行语句1,条件为假时,执行语句2。其中,else部分可以省略
if (条件) { 
    语句1 
} else { 
    语句2 
}

//例子:
let score = 75
if ( score > 80) {
    console.log('A')
} else if ( score > 60) {
    console.log('B')
} else {
    console.log('C')
}
// score为75,小于80但大于60,故输出: B
复制代码

1.2 switch语句

// 当 表达式的值 等于 值1 时,执行 语句1,遇到break语句则跳出switch语句,若都没匹配到值,则执行default中的语句。
switch (表达式) {
    case 值1: 
        语句1
        break
    case 值2: 
        语句2
        break
    default: 
        语句3
        break	
}

//例子
let score = 'B'
switch ( score ) {
    case 'A':
        console.log('> 80')
        break
    case 'B':
        console.log('60 ~ 80')
        break
    default :
        console.log('< 60')
}
// score的值跟case的'B'相匹配,故输出: 60 ~ 80,遇到break,结束switch语句
复制代码

注意:一般情况下,我们在每个case语句后都要加上 break语句 来跳出switch语句。若不添加,则会执行匹配到的case语句后的所有语句,直到遇到break为止。

2. 循环语句

2.1 while语句

//当 表示达 为真时,执行 语句1 直到 表达式 为假。
while ( 表达式 ) {
    语句1
}
复制代码

注意:在 语句1 中一定要对 表达式 进行操作,使其在一定循环次数内变为假,否则会导致死循环。

2.2 do while语句

//先执行语句1,然后再根据表达式的真假情况来决定是否继续执行语句1
do {
    语句1
} while ( 表达式 )
复制代码

注意:不管什么情况下, do while语句 总会先执行一次 语句1

2.3 for语句

//首先执行初始化部分,然后进行循环条件的判断,若为真,则执行语句1,最后再执行更新表达式部分。若为假,则结束for循环。
for ( 初始化; 循环条件; 更新表达式) {
    语句1
}
复制代码

注意: 初始化更新表达式 部分都不是必需的, 初始化 部分可以放在for语句外部,而 更新表达式 部分可以放在 语句1 中。

2.4 for in语句

用于遍历对象的属性。

//遍历对象的属性
for ( 属性名 in 对象) {
    语句1
}
复制代码

注意: for in 语句也会遍历原型链上的属性(原型链相关可参考: 帮你彻底搞懂JS中的prototype、__proto__与constructor(图解) ),若只想遍历对象自身的属性,可以使用以下方式:

for ( let 属性名 in 对象) {
    if ( 对象.hasOwnProperty( 属性名 ) ) {
        语句1
    }
}
复制代码

3. 控制语句

3.1 continue语句

continue语句用于循环语句中,跳过当前的循环,进入下一次循环。

3.2 break语句

break语句用于控制流程中,直接跳出循环语句或者switch语句。

4. 异常捕获语句

/**
* 将可能发生异常的 语句1 放到try语句块中,若 语句1 执行时有异常,则被 catch语句 捕获,
* 接着执行 语句2 ,最后再执行 finally语句块 中的 语句3。
* 其中 finally语句块 中的 语句3,不管 语句1 是否有异常都会执行。
*/
try {
    语句1
} catch ( exception ) {
    语句2
} finally {
    语句3
}

//例子
try {
    console.log(myName)
} catch ( exception ) {
    alert( exception)
} finally {
    alert('bad dream!')
}
/** 
* 在try语句块中,我们试图输出变量myName的值,但是变量myName并未定义,所以出现异常被catch语句块捕获,
* 然后弹窗出现内容:ReferenceError: myName is not defined,
* 最后再执行finally语句,弹窗出现内容:bad dream!
*/
复制代码

5.with语句(不推荐使用)

可以让我们在访问对象属性时更加简短。with语句在性能上存在问题,以及在作用域上可能会引起不必要的混淆,ES5的严格模式中也禁用了该语句,不推荐使用。

with ( 表达式 ) {
    语句
}

//例子:
let cc = {
    name: 'cc',
    age: 100,
    company: {
        name: 'BEST',
        address: 'Hang Zhou'
    }
}

with(cc) {
    console.log(`company name:${company.name}, company address: ${company.address}`)
}
//输出: company name:BEST, company address: Hang Zhou

//替代的方法:
let company = cc.company
console.log(`company name:${company.name}, company address: ${company.address}`)
//输出: company name:BEST, company address: Hang Zhou
复制代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Visual Thinking

Visual Thinking

Colin Ware / Morgan Kaufmann / 2008-4-18 / USD 49.95

Increasingly, designers need to present information in ways that aid their audiences thinking process. Fortunately, results from the relatively new science of human visual perception provide valuable ......一起来看看 《Visual Thinking》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器