iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >JavaScript预编译什么意思
  • 911
分享到

JavaScript预编译什么意思

2023-06-06 16:06:11 911人浏览 独家记忆
摘要

这期内容当中小编将会给大家带来有关javascript预编译什么意思,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。js运行三部曲js运行代码共分三步语法分析预编译解释执行JavaScript代码在运行时,

这期内容当中小编将会给大家带来有关javascript预编译什么意思,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

js运行三部曲

js运行代码共分三步

  • 语法分析

  • 预编译

  • 解释执行

JavaScript代码在运行时,首先会进行语法分析,通篇检查代码是否存在低级错误,然后进行预编译,整理内部的一个逻辑,最后再开始一行一行的执行代码

语法分析

代码在执行之前,系统会通篇扫描一遍,检查代码有没有低级的语法错误,比如少写个大括号。

预编译

预编译前奏

预编译发生在函数执行的前一刻。变量未经声明就赋值,此变量为全局对象所有

a = 3

var b = c = 4

一切声明的全局变量,全是window的属性

var a = 1 ===> window.a = 1

预编译四部曲

  1. 创建AO(Activation Object)对象(里面存储的是函数内部的局部变量)

  2. 找形参和变量声明,将变量和形参名做为AO属性名,值为undefined

  3. 将实参和形参统一

  4. 在函数体里面找函数声明,值赋予函数体

用一个例子来说明一下,也可以自己先给出一个答案,再继续往下看

function fn(a) { console.log(a); var a = 123; console.log(a); function a() {} console.log(a); var b = function() {}; console.log(b); function d() {} console.log(d)}fn(1);

第一步,创建AO(Activation Object)对象 {}第二步,找形参和变量声明,将变量和形参名做为AO属性名,值为undefined

{ a: undefined, b: undefined,}

第三步,将实参和形参统一

{ a: 1, b: undefined,}

第四步,找函数声明,值赋予函数体

{ a: function a() {}, b: undefined, d: function d() {}}

所以在函数fn执行的前一刻,a、b、d的值如上所示

所以fn(1)执行的结果为

// ƒ a() {}
// 123
// 123
// ƒ () {}
// ƒ d() {}

在全局作用域里,预编译过程有些许不同

  • 创建Go(Global Object)对象(里面存储的是函数内部的全局变量)GO === window

  • 找形参和变量声明,将变量和形参名做为GO属性名,值为undefined

  • 在函数体里面找函数声明,值赋予函数体

解释执行

一行一行的执行代码

实践题

这里有几个例题,有兴趣的可以看一下

function test(a, b) { console.log(a); console.log(b); var b = 234; console.log(b); a = 123; console.log(a); function a() {} var a; b = 234; var b = function() {}; console.log(a); console.log(b);}test(1);
global = 100;function fn() { console.log(global); global = 200; console.log(global); var global = 300;}fn();var global;
function test() { console.log(b); if (a) {  var b = 100; } c = 234; console.log(c);}var a;test();a = 10;console.log(c);

上述就是小编为大家分享的JavaScript预编译什么意思了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: JavaScript预编译什么意思

本文链接: https://www.lsjlt.com/news/247662.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JavaScript预编译什么意思
    这期内容当中小编将会给大家带来有关JavaScript预编译什么意思,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。JS运行三部曲js运行代码共分三步语法分析预编译解释执行JavaScript代码在运行时,...
    99+
    2023-06-06
  • javascript中预编译指的是什么意思
    这篇文章将为大家详细讲解有关javascript中预编译指的是什么意思,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 在JavaScript中...
    99+
    2024-04-02
  • JavaScript预编译过程是什么
    本篇内容介绍了“JavaScript预编译过程是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!阶段(三...
    99+
    2024-04-02
  • javascript预编译的功能是什么
    本篇内容主要讲解“javascript预编译的功能是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript预编译的功能是什么”吧! ...
    99+
    2024-04-02
  • javascript什么意思
    javascript一种直译式脚本语言,已经广泛应用于Web应用开发,它的解释器被称为javascript引擎,为浏览器的一部分,javascript常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。...
    99+
    2024-04-02
  • javascript预编译检查错误怎么办
    JavaScript作为一门常见的编程语言,在Web开发中得到了广泛应用。在编写JavaScript代码时,由于语言特性的复杂性和灵活性,很容易犯一些错误,这些错误可能会导致程序运行时的崩溃或者产生不可预料的结果。要避免这种情况的发生,我们...
    99+
    2023-05-14
  • Mybatis为什么需要预编译
    小编给大家分享一下Mybatis为什么需要预编译,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!为什么需要预编译定义:SQL 预编...
    99+
    2024-04-02
  • vue模板预编译是什么
    本教程操作环境:windows7系统、vue3版,DELL G3电脑。模板预编译当使用 DOM 内模板或 JavaScript 内的字符串模板时,模板会在运行时被编译为渲染函数。通常情况下这个过程已经足够快了,但对性能敏感的应用还是最好避免...
    99+
    2023-05-14
    Vue
  • disable javascript什么意思
    Disable JavaScript是指禁用网页中的JavaScript功能。JavaScript是一种跨平台的脚本编程语言,它在网页开发中广泛应用于增强用户体验、处理表单数据、实现动态网页等方面。但是,JavaScript也可能存在一些安...
    99+
    2023-05-14
  • JavaScript中的预编译如何进行
    本篇内容介绍了“JavaScript中的预编译如何进行”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!&nb...
    99+
    2024-04-02
  • JavaScript中预编译的示例分析
    小编给大家分享一下JavaScript中预编译的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!JavaScript 预编...
    99+
    2024-04-02
  • css预处理是什么意思
    这篇文章给大家分享的是有关css预处理是什么意思的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。css的三种引入方式1.行内样式,最直接最简单的一种,直接对HTML标签使用style=""。2....
    99+
    2023-06-14
  • python英文翻译是什么意思
    这篇文章主要介绍了python英文翻译是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyth...
    99+
    2023-06-14
  • JavaScript预编译和执行过程详解
    javascript相对于其它语言来说是一种弱类型的语言,在其它如java语言中,程序的执行需要有编译的阶段,而在javascript中也有类似的“预编译阶段&rdquo...
    99+
    2024-04-02
  • JavaScript编译原理是什么
    本篇内容介绍了“JavaScript编译原理是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.分词/...
    99+
    2024-04-02
  • javascript编译器使用什么
    JavaScript编译器使用什么?随着JavaScript的不断发展,越来越多的网站和应用程序使用JavaScript作为主要的客户端编程语言。为了确保高效的JavaScript代码执行和优质的用户体验,开发者越来越多地关注编译器在Jav...
    99+
    2023-05-21
  • javascript中%是什么意思
    小编给大家分享一下javascript中%是什么意思,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • javascript中array什么意思
    在JavaScript中,array(数组)是一个有序的、可变长度的数据集合。它是一种特殊类型的对象,可以通过索引(从0开始)访问其...
    99+
    2023-08-28
    javascript
  • javascript是什么意思啊
    JavaScript 是一种广泛用于网页开发的脚本语言。它可以用来为网页添加各种动态功能和交互效果,比如表单验证、图像轮播、菜单切换...
    99+
    2023-09-05
    javascript
  • 接受javascript什么意思
    JavaScript是一种广泛使用的脚本语言,用于为网站和应用程序提供交互性和动态性。如果一个网站或应用程序需要使用JavaScript,那么你需要接受它。接受JavaScript意味着你必须让浏览器执行JavaScript脚本。这可以在浏...
    99+
    2023-05-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作