码迷,mamicode.com
首页 > Web开发 > 详细

关于JS中的函数定义及函数表达式

时间:2015-06-21 22:21:54      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:

     在初学JS的过程中,老是不能区别什么是函数表达式什么是函数定义,这对基础知识的夯实是不利的。因此查阅资料,认真对其进行了区别。

     简单总结如下:

          1.区别一:以function开头的函数纪委函数定义,其他则为函数表达式;

          2.区别二:函数表达式可以省略函数名。

        function FunctionName(FormalParameterList) { FunctionBody }          //函数定义
        function [FunctionName](FormalParameterList) { FunctionBody }        //函数表达式

     在实际运用函数过程中,函数定义不能立即执行,会引起SyntaxError语法错误,因此恤将它解析为函数表达式。即在函数定义钱加上其他任意符号,最常见且不怪异的写法为在之前加括号,例如:(function getName(){})。这样大家是不是会联想到匿名函数?对了,此时可以学到另一个知识,即‘(function() {})()‘和‘(function(){}())‘两个函数,这两个函数的区别是什么呢?我们可以先看看他们的共同点,与普通函数相比,很明显,他们都有括号,而括号在javascript中有2种作用:一是确立运算优先级,二是作为分组运算符。这里肯定不是前一种用法,二是后一种。此时:

      (function(){})(),用括号评估了一个函数表达式,随后使其参与“函数调用”;

         (function(){}()),用括号评估了一个函数调用,随后由于语句的结束而被执行。

 

关于JS中的函数定义及函数表达式

标签:

原文地址:http://www.cnblogs.com/july-Vivian/p/4592528.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!