`
accpxudajian
  • 浏览: 463346 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

js是预编译的特点

阅读更多

<script>
  function myfunc ()
    {
        alert("1");
    };
    myfunc(); //这里调用myfunc,输出yeah而不是hello
   
    function myfunc ()
    {
        alert("2");
    };   
    myfunc(); //这里调用myfunc,当然输出yeah
 /**
  js预编译的结果:JavaScript执行引擎并非一行一行地分析和执行程序,而是按照script标签
  一段一段地分析执行的,在同一段程序(就是同一个script标签中)的分析执行中,
  定义式的函数语句会被提取出来优先执行。所以上边的代码编译后的顺序为:
  function myfunc ()
  {
   alert("1");
  };
   function myfunc ()
  {
   alert("2");
  };    

  //后一个将前一个覆盖掉。

   myfunc(); //这里调用myfunc,输出yeah而不是hello
   myfunc(); //这里调用myfunc,当然输出yeah
 */
</script>

 

 

 

分享到:
评论

相关推荐

    Packem是一个预编译的通用JavaScript模块捆绑器专注于性能灵活性和可扩展性

    Packem,一个预编译的通用JavaScript模块捆绑器,是为了解决现代Web开发中的性能、灵活性和可扩展性需求而设计的。在JavaScript开发领域,模块打包是必不可少的环节,它将分散的源代码文件合并成单一的可执行文件,...

    CommonJS时代的JS模块和编译工具

    预处理器(如Babel)可以在源代码编译之前对其进行一些预处理工作,例如将ES6代码转译为ES5代码,以便在旧版浏览器中运行。 随着前端开发的成熟,前端团队越来越依赖于各种流行的库和框架,如jQuery、YUI等,这导致...

    编译性语言、解释性语言和脚本语言

    然而,编译型语言的缺点在于需要预编译步骤,对开发环境和目标平台的依赖性强,且编译后的程序体积通常较大。 解释性语言,如Python、Ruby和Perl,它们的源代码在运行时逐行被解释器解析并执行,不需要预先生成可...

    windows编译ZLMediaKit流媒体服务包含webrtc,下载后能直接运行,无需编译, 支持webrtc

    1. **易于部署**:提供的预编译版本可以在Windows系统上直接运行,极大地简化了部署流程,用户只需要下载解压,即可启动服务,省去了编译环境配置和源码编译的步骤。 2. **WebRTC支持**:集成WebRTC意味着...

    JsonCpp源码VS2008/VS2010编译成功

    5. **修改配置**:由于JsonCpp的源码可能与某些旧版编译器不完全兼容,用户可能需要对源代码进行小幅度修改,比如更改预处理器定义,或者调整编译选项,以适应特定的编译环境。 6. **编译与链接**:在完成配置后,...

    e-template:另一个带有预编译的 Javascript 模板引擎

    1. **预编译**:e-template 提供了预编译功能,允许在服务器端提前将模板转换为 JavaScript 函数,从而在客户端执行时提高性能。预编译后的模板代码执行更快,因为它们避免了运行时的字符串操作。 2. **迷你小巧**...

    js引擎工作原理.pdf

    在这个过程中,JavaScript引擎遵循特定的步骤和机制,包括词法分析、语法分析、预编译、运行时执行等。 词法分析阶段,JavaScript引擎会将源代码分解成一个个有意义的符号(token),例如变量名、关键字、运算符等...

    spidermonke vs2005 编译 使用文档

    压缩包中的"SpiderMonkey.rar"可能是SpiderMonkey的源代码或预编译库的另一个版本。"js32.dll"和"js32.lib"是编译好的库文件,它们可以直接在Windows系统中使用,无需重新编译。"js"文件夹可能包含了额外的...

    grunt-handlebars-precompile:预编译 Handlebars 模板 (*.hbs) 以与运行时库一起使用

    5. **集成到项目**:预编译后的模板文件可以直接在你的JavaScript代码中引用,或者在AMD环境中通过require来加载。这样,当需要渲染模板时,只需传入数据,Handlebars运行时库会负责剩下的工作。 总结,"grunt-...

    OpenCC 1.0.5 Windows

    在Windows环境下,OpenCC 提供了预编译的二进制版本,如"OpenCC-1.0.5-Win64",这表明它已经为64位Windows系统优化过。这个压缩包文件通常包含可执行文件、库文件以及必要的配置文件,用户可以直接运行或集成到其他...

    koala 前端编译神器

    它支持LESS、SASS、CoffeeScript、Markdown等预处理器语言,将这些语言编译成浏览器可以直接理解的CSS、JavaScript和HTML。 **LESS:** LESS是一种CSS预处理器,它扩展了CSS语法,允许我们使用变量、嵌套规则、...

    Javascript模版引擎Handlebars.js源文件与示例

    - 预编译:你可以将模板预编译成JavaScript函数,然后在客户端或服务器端运行,以提高性能。 - 安全:通过避免直接执行用户输入的JavaScript,Handlebars降低了XSS攻击的风险。 - 插件系统:通过自定义助手,你可以...

    js学习.ppt js学习.ppt

    JavaScript的主要目的是增强网页的交互性和动态性,它无需预编译,可以直接在浏览器环境中执行,极大地简化了网页应用的开发。 JavaScript的特点包括: 1. 脚本语言:JavaScript的语法相对宽松,不那么严格,主要...

    程序编译与解释.pdf

    - Java API是一系列预定义的类和接口的集合,提供给开发者使用。 - 包括基本数据类型、集合框架、多线程支持等多种功能。 - 使得开发者能够利用现有的类库来构建自己的应用,提高开发效率。 #### 五、总结 - ...

    arttemplate高性能javascript模板引擎.docx

    - **预编译**:artTemplate的核心技术之一就是预编译。这意味着模板的编译过程发生在渲染之前,从而避免了每次渲染时重复编译的开销,显著提高了性能。 - **优化的字符串拼接**:针对不同浏览器环境采取不同的字符串...

    ember-crud:带有Ember Data 1.0.0beta3的Ember.js 1.1.2的简单CRUD +触摸手势移动(响应)版本+ Grunt模板预编译

    该存储库是Ember(1.1.2)和Ember Data(1.0.0-beta3)的简单演示,其特点是: Create / Read / Update / Delete users集合views上的复杂CSS过渡/动画使用预编译的车把模板完整的响应式UX(带有触摸事件,以及路线...

    基于JavaScript的HTML5弹幕插件danmu.js设计源码

    danmu.js作为一个开源项目,具有轻量、高效和易于集成的特点。它不仅支持传统的网页平台,还可以轻松嵌入到现代前端框架中,为各种网页和应用提供弹幕功能。该插件的核心是一系列精心设计的JavaScript文件,这些文件...

    JavaScript学习资料

    与Java或C#等编译语言不同,JavaScript不需要预编译,直接嵌入HTML页面,由浏览器解释执行。JavaScript文件可以通过HTML中的script标签引入,也可创建外部的.js文件,在HTML中通过script标签引入。由于JavaScript是...

    javascript的详细说明

    JavaScript的主要特点是解释性、基于对象和事件驱动,这意味着它无需预编译,可以直接在用户的浏览器中运行,通过解析HTML中的JavaScript代码来执行。 JavaScript可以在不同的位置嵌入到HTML文档中。当JavaScript...

    laytpl是一款非常轻量的JavaScript模板引擎

    总结来说,laytpl是一款以简洁和高性能为特点的JavaScript模板引擎,它遵循原生JS语法,易于学习和使用。在前端开发中,laytpl可以帮助我们高效地实现数据和视图的动态绑定,提升开发效率,是构建响应式Web应用的一...

Global site tag (gtag.js) - Google Analytics