zoukankan      html  css  js  c++  java
  • js:语言精髓笔记3----语句

    JS语句分类:(注意语句都是有返回值的)

    • 声明语句:
      • 变量声明语句;
      • 标签声明语句;
      • 函数声明语句;
    • 表达式语句:(表达式加分号)
      • 变量赋值语句:具有声明一个变量的隐式效果;
      • 函数调用语句;
      • 属性赋值语句;
      • 方法调用语句;
    • 分支语句:
      • 条件分支语句;
      • 多重分支语句;
    • 循环语句:
      • for()
      • for...in
      • while
      • do..while
    • 控制结构:
      • 继续执行子句;
      • 中断执行子句;
      • 函数返回子句
      • 异常触发语句;
      • 异常捕获与处理;
    • 其他:
      • 空语句;
      • with语句;

    声明语句与赋值语句:

    • 声明语句(显示声明)一定就有var,它是语法符号,不是运算符;
    • 当语句中既有声明(隐式或显示)又有赋值的时候,等号其实是语法分隔符而不是运算符,固不能用“+=”等 代替;
    • 当仅使用赋值语句(变量已经声明),此时等号是运算符,可以用其他运算符代替;

    函数调用:

    • 具名函数直接调用: funtion foo(){}; foo();
    • 匿名函数通过引用调用: foo = function(){}; foo();
    • 没有引用的匿名函数调用:
      • (function(){}()):强制运算(最大的小括号)符使函数调用运算并执行
      • (function(){})():强制运算符运算“函数直接量声明”这个表达式,并返回引用,然后通过函数调用运算符操作引用;
      • void function(){}():void调用函数但忽略返回值;
    • 注意function(){}(),会被解析成两个语句,固无法执行;

    流程控制:一般子句

    • 标签声明:标签可以与变量重名,因为它是另外一种独立的语法元素;
    • break子句:使用范围:标签化语句(后面必须跟label),循环,switch分支;
    • continue子句:仅对循环有意义;可以使用标签,但只能对单个循环语句有意义;因为continue不允许跳转到当前/外层的单个循环语句的起始之外。
    • return子句:不指定返回值的话返回undefined,注意和void的区别;

    流程控制:异常

    • finally语句块总是在try/catch块退出之前被执行,即使有return或break;
  • 相关阅读:
    希尔伯特空间
    Java基础之类型转换总结篇
    超实用在线编译网站,编辑器
    3269: 万水千山粽是情
    Problem A: 李白打酒
    2370: 圆周率
    C语言fmod()函数:对浮点数取模(求余)
    C语言exp()函数:e的次幂函数(以e为底的x次方值)
    2543: 数字整除
    2542: 弟弟的作业
  • 原文地址:https://www.cnblogs.com/jinkspeng/p/4008439.html
Copyright © 2011-2022 走看看