资讯专栏INFORMATION COLUMN

Javascript权威指南--每日一读(语句)

CastlePeaK / 2212人阅读

摘要:和都是循环语句,不同的是检测表达式的位置。语句异常语句,所谓异常语句是发生异常或错误的一个标志或信号。抛出异常就是指这个状况,捕获异常实是指处理的过程。语句异常处理机制。语句严格模式中禁止使用语句。

1.switch语句

语句都很熟悉的啦,只是提一句。switch中的case语句匹配的规则实际上是“===”而非简单的“==”比较,case匹配不会做任何的类型转换的。

2.while和do/while

都是循环语句,不同的是检测表达式的位置。while是在循环的顶部,do/while是在循环体的底部检测。简单地说无论是否满足循环条件do/while都会至少执行循环体一次,而while则不是这样。

3.标签语句

tag:if(matrix){
    for(var i = 0 ; i < matrix.lenght ; i++){
        var row = matrix[x];
        if(!row){
            break tag;
        }
    }
    //位置a
}
//位置b
//如果仅仅是break他会跳出到位置a,而上例中则跳转到了位置b。

4.throw语句

异常语句,所谓异常语句是发生异常或错误的一个标志或信号。抛出异常就是指这个状况,捕获异常实是指处理的过程。例如

test(-1);
function test(x){
    if(x < 0){
        throw new Error("不能为负");
    }
    console.log(x);
}
//当抛出了异常,Javascript解析器会立即停止执行,并跳转到异常处理程序,如果找不到则会被当做程序错误并输出错误报告。

5.try/catch/finally语句

异常处理机制。

try:定义需要处理的代码块;

catch:在try之后用来在出现异常时进行处理;

finally:无论怎样都执行的语句,一般用于清理工作。

不过好像coding的时候好像很少用到,那我们什么时候才会用?研究了一下:其实是为了程序“体面的退出”。

//例如:
try{
    window.a.b;
}catch(e){
    alert(e);
    alert("continue");
}
//如果用if粗糙地判断你需要先判断window.a是否合法在判断window.b否则直接判断就有可能出现问题。
//但是用try/catch就可以“体面”的返回报错,并使程序继续运行。

6.with语句

*严格模式中禁止使用with语句。非严格模式也不推荐使用,因为使用with的代码难于优化切效率比较低。

//with使用:
with(objecy){
    //body
}
//with可以暂时的将object推送到作用域链的顶端, 在body之后在恢复作用域链。
//比如:
with(obj) x=1;
//其实就是把obj推向了作用域链的顶端并使obj.x = 1;
//其实效果和在全局定义obj并obj.x = 1的效果是一样的;
//并且如果obj没有x属性的话,上例相当于x = 1;

7.debugger语句

暂停程序执行,类似设置断点功能。

8.严格模式(use strict)

它是ECMAScript5引入的指令(而非语句);

仅仅是一个字符串直接量表达式,对于没实现ES5的解析器来说,它仅仅是一条没有副作用的语句,相当于透明的存在。

只能出现在脚本/函数体的开始;

严格模式和非严格模式↓: 严格模式和非严格模式区别

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/80776.html

相关文章

  • Javascript权威指南--每日一读(表达式、运算符)

    摘要:是一个函数还是一个运算符是一个函数但已经被当成运算符对待了。运算符通过其判断一个对象是否是一个类的实例的时候,判断会包含对父类的检测。运算符或对于所有对象都会返回而非例如想要区分和用用上边的吧。 1.evel是一个函数还是一个运算符? 是一个函数但已经被当成运算符对待了。 evel如果传入一个非字符串则返回此参数,如是字符串则解析这段字符串。 2.instanceof运算符: 通...

    mylxsw 评论0 收藏0
  • Javascript权威指南--每日一读(类型、值、变量)

    摘要:直接量啥意思直接量就是直接用到的数据例如等等。标识符与保留字啥东西标识符简单讲就是用来对变量和函数进行命名的,标识符不可以以数字开头,可以使用字母和和开头。数字表示不区分整数和浮点数。范围精度有限,超出无意义。 1. 直接量 啥意思?直接量就是直接用到的数据~ 例如:10,100,1.1,Hello Word,true,false等等。 2. 标识符与保留字 啥东西?标识符简单讲就...

    Soarkey 评论0 收藏0
  • Javascript权威指南--每日一读(对象啊~找对象啊~)

    摘要:创建对象创建对象直接量,。原型每一个对象除了都和另一个对象原型相关联,每个对象都从原型继承属性。前边写过的一个函数找到中的找到结果是,之前提到的不会修改原型链。属性访问错误抛出异常,因为没有属性。存取器属性读取写入可枚举性可配置性。 1.创建对象 创建:对象直接量、new、Object,create()。 原型:每一个对象(除了null)都和另一个对象(原型)相关联,每个对象都从原型继...

    Lucky_Boy 评论0 收藏0
  • 如果想成为一名顶尖的前端,这份书单你一定要收藏!

    摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队 发表于云+社区专栏作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍...

    callmewhy 评论0 收藏0
  • 如果想成为一名顶尖的前端,这份书单你一定要收藏!

    摘要:其中负载均衡那一节,基本上是参考的权威指南负载均衡的内容。开发指南读了一半,就是看这本书理解了的事件循环。哈哈创京东一本骗钱的书。 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯IVWEB团队 发表于云+社区专栏作者:link 2014年一月以来,自己接触web前端开发已经两年多了,记录一下自己前端学习路上看过的,以及道听途说的一些书,基本上按照由浅入深来介绍...

    Scliang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<