zoukankan      html  css  js  c++  java
  • JavaScript 代码块

    JavaScript 代码块

    代码块就是使用 <script> 标签包含的 JavaScript 代码段。

    在下面示例中,使用了两个 <script> 标签分别定义两个 JavaScript 代码块。

    <script>
        //JavaScript 代码块 1
        var a = 1;
    </script>
    <script>
        //JavaScript 代码块 2
        function f(){
            alert(1);
        }
    </script>
    

    浏览器在解析这个 HTML 文档时,如果遇到第一个 <script> 标签,则 JavaScript 解释器会等到这个代码块的代码都加载完后,再对代码块进行预编译,然后执行。

    执行完毕,将继续解析后面的 HTML 代码,同时 JavaScript 解释器也准备好处理下一个代码块。


    如果在一个 JavaScript 代码块中调用后面代码块中声明的变量或函数,就会提示语法错误。

    例如,当 JavaScript 解释器执行下面代码时就会提示语法错误,显示变量 a 未定义。

    <script>
        //JavaScript 代码块 1
        alert(a);
    </script>
    <script>
        //JavaScript 代码块 2
        var a = 1;
    </script>
    

    如果把两块代码放在一起,就不会出现上述错误。合并代码如下:

    <script>
        //JavaScript 代码块
        alert(a);
        var a = 1;
    </script>
    

    注意:

    JavaScript 是按块执行的,但是不同块都属于同一个作用域(全局作用域),下面块中的代码可以访问上面块中的变量。

    因此,如果把上面示例中两个代码块的顺序调换一下,就不会出现语法错误。

    <script>
        //JavaScript 代码块 2
        var a = 1;
    </script>
    <script>
        //JavaScript 代码块 1
        alert(a);
    </script>
    
  • 相关阅读:
    BZOJ 4033: [HAOI2015]树上染色 (树形DP)
    BZOJ 1820: [JSOI2010]Express Service 快递服务 DP
    BZOJ 4664: Count 插块DP
    BZOJ 1899: [Zjoi2004]Lunch 午餐 DP
    BZOJ 4559 [JLoi2016]成绩比较 (DP+拉格朗日插值)
    BZOJ1485 [HNOI2009] 有趣的数列 (卡特兰数)
    BZOJ 2111 / Luogu P2606 [ZJOI2010]排列计数
    20190915模拟赛
    深海机器人问题
    太空飞行计划问题
  • 原文地址:https://www.cnblogs.com/kai-/p/12316116.html
Copyright © 2011-2022 走看看