zoukankan      html  css  js  c++  java
  • JavaScript学习笔记(持续更新)

      函数有“定义式”和“变量式”两种写法的区别

      函数有“定义式”和“变量式”两种写法,两者基本区别不大。主要区别在于,如果在同一个代码块(Script标签对)定义两个同名的函数,浏览器在预编译代码时,使用定义式的,第一个函数会被第二个覆盖,而变量式的则会按顺序执行。因为JavaScript执行引擎并非一行一行地分析和执行程序,而是一段一段地分析执行的。而且,在同一段程序的分析执行中,定义式的函数语句会被提 取出来优先执行。函数定义执行完之后,才会按顺序执行其他语句代码。也就是说,在第一次调用myfunc之前,第一个函数语句定义的代码逻辑,已被第二个 函数定义语句覆盖了。所以,两次都调用都是执行最后一个函数逻辑了。

      示例如下:

        var myfunc = function ()
            {
                alert("hello");
            };
        myfunc(); //第一次调用myfunc,输出hello
        
        myfunc = function ()
            {
                alert("yeah");
            };    
        myfunc(); //第二次调用myfunc,将输出yeah
        function myfunc ()
        {
            alert("hello");
        };
        myfunc(); //这里调用myfunc,输出yeah而不是hello
        
        function myfunc ()
        {
            alert("yeah");
        };    
        myfunc(); //这里调用myfunc,当然输出yeah
  • 相关阅读:
    c++中的 三/五原则
    3. 无重复字符的最长子串
    c++中的单例模式
    bfs 以及 dfs 常用解题思路
    经济学的三个问题
    gtihub 上一些值得学习的项目
    994. 腐烂的橘子
    96. 不同的二叉搜索树
    some idea
    Libco协程库
  • 原文地址:https://www.cnblogs.com/ximenxiazi/p/8458473.html
Copyright © 2011-2022 走看看