首页 > 其他分享 >编译

编译

时间:2022-09-29 10:12:42浏览次数:52  
标签:function console log 编译 test var undefined

函数预编译

    1. 创建 AO 对象
    2. 找变量声明 形参,将变量名 形参名 当作 AO 对象的属性名,值为undefined
    3. 将实参和形参统一
    4. 在函数体内找函数声明,赋值予函数体


function fn(a,c){
    console.log(a);  // ƒ a(){}
    var a = 111;  
    console.log(a);  // 111
    console.log(c);  // ƒ c(){}
    function a(){};
    if(false){
        var d = 222;
    };
    console.log(d); // undefined
    console.log(b);  // undefined
    var b = function(){};
    console.log(b);  // ƒ (){}
    function c(){};
    console.log(c)  // ƒ c(){}
};

fn(20,30)

  

全局预编译

  1. 创建 GO 对象
  2. 找变量声明,将变量名当作 GO 对象的属性名,值为undefined
  3. 找函数声明 赋值予函数体
console.log(test); // f test(){}
console.log(b); // undefined
function test(a){
    console.log(c); // undefined
    var a = b = 365;
    c = 9;
    if(false){
        var c = 1000
    };
    console.log(a)  // 365
    console.log(c) // 9
};
test(100);
console.log(b); // 365 ? 注意连续赋值时
console.log(test) // f test(){}
var test = 500;
var b = 800;

 




 

标签:function,console,log,编译,test,var,undefined
From: https://www.cnblogs.com/rose-sharon/p/16740289.html

相关文章

  • 编译安装php-fpm5.6 (centos 7)
    一、安装php-fpm依赖包yuminstall-ymakecmakegccgcc-c++autoconfautomakelibpng-devellibjpeg-develzliblibxml2-develncurses-develbisonlibtool-ltdl-deve......
  • Linux 开发环境搭建与使用——Linux 编译器之 GCC
    ​​上一节我们学习了vim编辑器​​,接下来我们一起学习gcc编译器,这里,我们要区分编辑器和编译器有何不同?编辑器是指我用它来写程序的(编辑代码),而我们写的代码语句,电脑是不......
  • Linux make编译
    安装问题linux编译流程linux开发部分一般来说著名的linux系统基本上分两大类:RedHat系列:Redhat、Centos、Fedora等Debian系列:Debian、Ubuntu等RedHat系列常见的......
  • k8s集群上 docker 镜像编译
    因工作需要,在k8s集群上程序构建镜像。调研了dockerindocker方案。见链接。https://applatix.com/case-docker-docker-kubernetes-part-2/怎么都感觉不够智能,而且有点......
  • CentOS7.9编译安装gp
    前提条件yumupdate-yyum-yinstallepel-releaseyum–yinstallpython-pipyuminstall-ylrzsz设置python国内下载源mkdir-p~/.pipvi~/.pip/pip.conf......
  • 如何防止 App 反编译 All In One
    如何防止App反编译AllInOneApp安全/App逆向工程加密数据加密网络加密文件加密混淆代码混淆代码混淆的目的是为了加大反编译的难度和成本,但是并不能彻......
  • 关于UE4 C++项目编译rapidxml库并运行时报错问题
    新建了一个UE4的C++项目,想使用第三方的rapidxml库对我以前作cocos2d-x的游戏配置数据进行解析,因为以前就用的是这个库。发现在UEEditer里编译C++的时候不会出错,但在xc......
  • python及第三方库交叉编译
    一、前言:网上关于python的交叉编译的文章很多,但是关于python第三库的交叉编译的文章就比较少了,而且很多标题是第三方库的交叉编译,但是实际上用到的都是不需要交叉编译......
  • 9、FFmpeg使用clion+mingw32编译学习y420p,yuv,rgb编码
    基本思想:继续学习ffmpeg基础知识第一步:进行y420p解码,然后将数据转rgb24格式,显示,重点学习了sws_getContext函数,可以通过他进行各种转码cmakelists.txt文件内容cmake_minimum_......
  • 6、C++ 静态编译链接使用库,及例子libfacedetection人脸识别应用
    直接上例子:存在三个文件 example.cpp中的文件#include<iostream>#include"function.h"usingnamespacestd;intfun(inta,intb);intmain(){cout<<fun(2,3)<<endl;cout<<......