zoukankan      html  css  js  c++  java
  • JavaScript之预解析

    <script>
    /** 预解析:提前解析代码
    *
    * 预解析做什么事?
    * 把变量的声明提前了(但赋值不会提前),提前到当前所在作用域的最上面
    * 函数的声明也会被提前,提前到当前所在作用域的最上面
    *
    * 预解析会分段(多对script标签中的函数重名,预解析的时候不会冲突)
    *
    * 先提前var,在提前function
    */

    //把变量的声明提前了
    console.log(num);//没有报错--undefined
    var num=20;

    f1();
    function f1() {
    console.log("哈哈哈哈");
    }

    f2();
    var num1=20;
    function f2() {
    console.log(num1); //结果是undefined 不是20
    var num1=10;
    }

    f3();
    var num2=20;
    function f3() {
    console.log(num2); //结果是undefined 因为预解析将函数f3和变量num2(但没有赋值)的定义提前
    }

    var num3=20;
    function f4() {
    console.log(num3); //结果是20
    }
    f4();
    </script>
  • 相关阅读:
    HTML学习基础(一)
    初识C#
    SQL小知识
    jQuery(四)
    jQuery(三)
    认识jQuery(二)
    认识Jquery
    初识Javascript
    初识HTML
    博客,你好!
  • 原文地址:https://www.cnblogs.com/chm-blogs/p/11219181.html
Copyright © 2011-2022 走看看