zoukankan      html  css  js  c++  java
  • JanaScript预解析

    JS预解析是什么?
          在当前的作用域下,js运行之前.会有带有 var 和 function关键字的代码事先声明,
          并在内存中安排好,然后从上到下的执行js代码.

    JS预解析 js逐行执行 

    js对什么进行预解析
          1> var 后面的变量
          2> 函数
          3> 函数传参的变量

    1.通过var关键字定义的变量进行预解析的时候,都是声明declare,不管他有没有赋值,都会赋值为undefined。
    凡是传参,直接赋值
    alert(a);
    var a = 1;
    alert(b);
    var b = function(){

    }
    alert(c);
    var c;

    2.function进行预解析的时候,声明而且定义了define,但它存储数据的那个空间存储的是代码是字符串,没意义 


         alert(a);//函数的字符串
     function a(){
     alert("预解析的function1")
    }

    3.预解析中想实现立即执行的函数 放到()一对括号当中去

    (function fn(){
    alert("预解析的function1")
      }(2));闭包

    (function(){
    alert("预解析的function2")
      }());

    js在什么情况下会进行预解析
    1.遇到<script><script>标签对时
    2.遇到函数时:因为变量是有作用域的。

    什么情况下会改变预解析赋予的初始值?

     有赋值功能的符号 = += *= /= ++ --

  • 相关阅读:
    查看网桥
    openstack 网卡
    fuel3.2安装
    whereis命令查看你要添加的软件在哪里
    ubuntu12.04开启远程桌面
    ubuntu 右键添加terminal
    本地源设置方法:
    ubuntu的dns设置
    chubu
    Linux内存
  • 原文地址:https://www.cnblogs.com/weiyz/p/7052421.html
Copyright © 2011-2022 走看看