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

JS中函数定义与函数表达式的不同

 
阅读更多

Js中的函数声明是指下面的形式:

 

      

[javascript] view plaincopy
  1. function functionName(){  
  2.   
  3. }  

 

       这样的方式来声明一个函数,而函数表达式则是类似表达式那样来声明一个函数,如:

 

              

[javascript] view plaincopy
  1. var functionName = function(){  
  2. }  

 

       可能很多朋友在看到这两一种写法时会产生疑惑,这两种写法差不多,在应用中貌似也都是可行的,那他们有什么差别呢?

       事实上,js的解析器对函数声明与函数表达式并不是一视同仁地对待的。对于函数声明,js解 析器会优先读取,确保在所有代码执行之前声明已经被解析,而函数表达式,如同定义其它基本类型的变量一样,只在执行到某一句时也会对其进行解析,所以在实 际中,它们还是会有差异的,具体表现在,当使用函数声明的形式来定义函数时,可将调用方式在函数声明之后,而后者,这样做的话会报错

分享到:
评论

相关推荐

    揭秘命名函数表达式

    命名函数表达式在不同的JavaScript引擎中的表现可能存在差异,特别是在旧版浏览器中。现代调试器通常能较好地处理命名函数表达式,但在早期版本的某些环境中,这种命名可能不会被完全识别,导致调试信息不完整。因此...

    JS 有名函数表达式全面解析

    根据 JavaScript 规范,函数表达式中的标识符不应该在函数体外可访问,但在某些 JavaScript 引擎实现中(如 JScript),标识符 `g` 却可以在外围作用域中被识别。这导致了标识符 `g` 污染了外围作用域,如果该作用域...

    函数声明与函数表达式1

    总结来说,函数声明和函数表达式在JavaScript中有着不同的行为和用法。理解这两者的区别对于编写可预测且无bug的代码至关重要。在实际开发中,应根据需求选择合适的函数定义方式,例如,如果你需要在函数声明之前...

    JavaScript中的函数申明、函数表达式、箭头函数

    本篇文章将详细探讨JavaScript中的三种函数创建方式:函数声明、函数表达式和箭头函数。 1. **函数声明** 函数声明使用`function`关键字来定义一个函数,如`function getName() {...}`。这种声明方式的特点是,...

    JavaScript基础篇(6)之函数表达式闭包

    JavaScript中定义函数主要分为函数声明和函数表达式两种形式。函数声明一般会使用`function`关键字直接声明一个函数,如`function fn() {}`,而函数表达式则通常将函数作为赋值表达式的一部分,例如`var fn = ...

    js中函数声明与函数表达式

    总结来说,理解JavaScript中的函数声明和函数表达式之间的差异是至关重要的,因为这会影响到代码的执行顺序和可访问性,从而可能引发预期外的错误。在编写JavaScript代码时,应根据具体需求选择合适的函数定义方式,...

    浅析函数声明和函数表达式-函数声明的声明提前_.docx

    【函数声明与函数表达式】在JavaScript中,函数是第一类对象,这意味着它们可以作为值进行传递和存储。本文将重点讨论两种常见的函数定义方式:函数声明和函数表达式,特别是函数声明的声明提前(Hoisting)现象。 ...

    浅析javascript中函数声明和函数表达式的区别

    1. **函数声明式**:这是JavaScript中最直接的函数定义方式,通常以`function`关键字开头,后面跟着函数名。例如: ```javascript function greeting() { console.log("hello world"); } ``` 函数声明式的...

    JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同

    JavaScript中函数表达式和函数声明是创建函数的两种基本方式,它们在语法和行为上有所区别。函数声明(Function Declaration)和函数表达式(Function Expression)的不同之处在于它们在代码中的处理方式和使用时机...

    js中函数的理解

    JS中的函数还有着自己的作用域规则,函数内部定义的变量只能在函数体内访问,这种特性称为局部作用域。同时,JS也支持函数作用域链,意味着函数内部可以访问外部函数的变量,但外部函数不能直接访问内部函数的变量。...

    javascript强制函数自动执行.pdf

    在JavaScript中,函数是一种非常重要的编程构造,它可以被定义为函数声明或函数表达式。这两种定义方式各有特点,并且在不同的上下文中有着不同的行为。 #### 函数声明(Function Declaration) 函数声明是定义一...

    JavaScript中的函数声明和函数表达式区别浅析

    在JavaScript中,创建函数主要有两种方式:函数声明(Function Declaration)和函数表达式(Function Expression)。虽然这两种方式都能达到创建函数的目的,但它们在语法结构、使用场景以及执行时机等方面存在显著...

    Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式

    即使在函数定义之前调用它也没问题。 foo(); // Works because foo was created before this code runs function foo() {} 因为我打算专门写篇介绍作用域的文章,所以这里就不详述了。 函数表达式 对于函数声明,...

    立即调用的函数表达式1

    这通常通过将函数定义包裹在圆括号中完成,这样JavaScript解析器会将其识别为一个表达式,然后在其后面添加另一个圆括号来立即执行这个函数表达式: ```javascript (function() { // 函数体 })(); ``` 这里,外层...

    命名函数表达式探秘.pdf

    在JavaScript中,函数表达式和函数声明是两种创建函数的基本方式。两者的主要区别在于它们的语法结构和执行上下文。 - **函数声明**:这是一种较为常见的定义函数的方式。其基本语法结构如下: ```javascript ...

    详解JavaScript中的函数声明和函数表达式

    通过这些知识点的学习,我们可以更好地理解JavaScript中函数声明和函数表达式的用法和区别,以及如何使用它们来创建不同的作用域和执行环境。在编写代码时,正确地选择和使用这些函数声明的方法,可以大大提升...

Global site tag (gtag.js) - Google Analytics