zoukankan      html  css  js  c++  java
  • 函数预解析补充

    预解析:

    1. 所有的变量声明,都会提升到最顶部,但不会提升赋值

    2. 所有的函数声明,都会提升到最顶部,但不会提升函数的调用

    3. 如果同时有多个 var 声明的相同的变量,后面的 var 将被忽略

    4. 如果同时有多个同名的函数,后面的函数将会覆盖前面的函数

    5. 如果声明的变量和声明的函数同名,声明的函数将会覆盖声明的变量

    6. 词法分析3步骤:

      1. 先分析函数形参(默认值为undefined),再分析形参赋值(没有形参的直接忽略此步骤)

      2. 分析函数体中所有的变量声明:

        2.1 如果变量名与形参名相同时,直接忽略var;

        2.2 如果变量名与形参名不同时,就相当于声明了一个变量,如var foo,值为undefined;

      3. 分析函数体中所有的函数声明,

        3.1 如果函数名与变量名相同,函数整体将作为变量的值;

        3.2 如果函数名与变量名不相同,相当于var 函数名 = function 函数名 () {};

      函数执行过程分为2步:

      1. 词法分析过程;

      2. 执行过程

  • 相关阅读:
    支持向量机SVM知识点概括
    决策树知识点概括
    HDU 3081 Marriage Match II
    HDU 3572 Task Schedule
    HDU 4888 Redraw Beautiful Drawings
    Poj 2728 Desert King
    HDU 3926 Hand in Hand
    HDU 1598 find the most comfortable road
    HDU 4393 Throw nails
    POJ 1486 Sorting Slides
  • 原文地址:https://www.cnblogs.com/hhmmpp/p/10993007.html
Copyright © 2011-2022 走看看