zoukankan      html  css  js  c++  java
  • JS定义函数的两种方式:函数声明和函数表达式

    函数声明

      关于函数声明的方式,它的一个重要的特性就是函数声明提升(function declaration hoisting),意思是在执行代码之前会先读取函数声明。这就意味着可以把函数声明放在调用它的语句后面,如下所示:

    1             sayHi();
                   //在调用语句的后面声明函数(function declaration hoisting)
    2             function sayHi () {
    3                console.log("Hello World");
    4             } 
    

      

     函数表达式

      有多种表达方式,下面是最常见的一种:

     var s = function (agr1, arg2) {
          console.log(arg1 + '  ' + arg2);
      } 

    按照书中所说,函数声明语句,声明函数实际是声明了一个变量f,然后将一个声明的函数对象赋值给变量f,变量的声明有提至所有代码顶部的特点,故函数声明语句声明的函数可以在声明之前调用。

    至于为什么同样是将一个函数赋值给一个变量,函数表达式却不能提到前面呢?我们来分析下:

    var s = function(arg1, arg2) {};
    

      

    可以拆分为:

    var s;
    s = function (arg1, arg2) {}
    

      

    其中 var s 被提前声明了,但 s = xxxx 是要在运行到这里的时候才进行。

  • 相关阅读:
    操作excel文件的基础工具xlrd/xlwt/xlutils学用
    第12课 OpenGL 显示列表
    第11课 OpenGL 飘动的旗帜
    第10课 OpenGL 3D世界
    第09课 OpenGL 移动图像
    第08课 OpenGL 混合
    第07课 OpenGL 光照和键盘(2)
    第07课 OpenGL 光照和键盘(1)
    第06课 OpenGL 纹理映射
    第05课 OpenGL 3D空间
  • 原文地址:https://www.cnblogs.com/yourstars/p/6121262.html
Copyright © 2011-2022 走看看