【JS】【Core】语句

JS语句以分号结束。

空语句


声明语句

var

var声明的语句是无法通过delete删除的。

如果var语句中的变量没有指定初始化表达式,那么这个变量的值初始化为undefined。

function

例如:

var f = function(x) {return x + 1;}
function f(x) { return  x + 1; }


函数声明语句通常出现在JS代码的最顶层,也可以嵌套在其他函数体内。但在嵌套时,函数声明只能出现在所嵌套函数的顶部。也就是说,函数定义不能出现在if语句,while循环或其他任何语句。


条件语句

if else else if


switch

例如:

switch (n) {
    case 1:
    //
    break;
    case 2:
    //
    break;
    default:
    //
    break;
}
function convert(x) {
    switch(typeof x){
        case 'number':
            return x.toString(16);
        case 'string':
            return '"' + x + '"';
        default:
            return String(x);
    }
}

每个case的匹配操作实际上是“===”恒等运算符比较,而不是“==”相等运算符比较。


循环语句

while


do while


for


for/in

for (variable in object)
    statement

例如:

for (var p in o){
    ... ...
}

跳转语句

标签语句

identifier : statement

通过给语句定义标签,就可以在程序的任何地方通过标签名引用这条语句。

例如:

mainloop : while(token != null){
    //
   continue mainloop;
   //
}

break

break后面可以加标签,和标签名之间不能换行。

不管break语句带不带标签,它的控制权都无法越过函数的边界。比如,对于一条带标签的函数定义语句来说,不能从函数内部通过这个标签来跳转到函数外部。


continue

也可以带标签。


return

return语句可以单独使用而不必带有expression,这样的函数会向调用程序返回 undefined。


throw

throw expression;

expression的值可以是任意类型的,可以抛出一个代表错误码的数字,或者包含可读的错误消息的字符串。当JS解释器抛出异常的时候通常采用Error类型或其子类型,一个Error对象有一个name属性表示错误类型,一个message属性用来存放传递给构造函数的字符串。当抛出异常时,JS解释器会立即停止当前正在执行的逻辑,并跳转至就近的异常处理程序。

例如:

function factorial(x) {
    if (x < 0) throw new Error("x 不能是负数");
    ... ...
}

try / catch / finally

如果finally块使用了return continue break 或者throw语句使程序发生跳转,或者通过调用了抛出异常的方法改变了程序流程,不管这个跳转使程序挂起还是继续执行,解释器都会将其忽略。

例如:

try{

}
catch (e){

}
finally{

}












  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值