搜索
简帛阁>技术文章>函数声明和函数表达式的区别

函数声明和函数表达式的区别

一、写法不一样

 1 //函数声明
 2 let res1 = sum1(10 , 20)
 3 console.log(res1)
 4 function sum1(num1, num2) {
 5     return num1 + num2
 6 }
 7 
 8 //函数表达式
 9 let res2 = sum2(10 , 20)
10 console.log(res2)
11 let sum2 = function ( num1, num2 ){
12     return num1 + num2
13 }

二、函数声明可以把函数预加载,而表达式不会

函数声明的方法定义的函数,函数可以在函数声明之前调用,而函数表达式的函数只能在声明之后调用。

三、分析浏览器如何执行代码

第一步:分析函数声明

在分析网页期间(执行任何代码之前),浏览器查找函数声明。找到函数声明时,浏览器创建相应的函数,并将得到的函数引用赋给与函数同名的变量。

 

第二步:浏览器执行代码

处理所有的函数声明后,浏览器回到代码开头,开始按从头到尾的顺序执行代码。

 

第三步:继续执行

处理完变量fly后,浏览器继续往下执行。接下来的语句是函数quack的声明,因为已经处理过了,所以浏览器跳过声明,接着执行后面的条件语句。

 

、写法不一样1//函数声明2letres1sum1(10,20)3consolelog(res1)4functionsum1(num1,num2){5returnnum1+num26}78//函数
javascript中声明函数方法有两种:函数声明函数表达式区别如下:1)以函数声明方法定义函数,函数名是必须,而函数表达式函数名是可选2)以函数声明方法定义函数,函数可以在函数
JavascriptFunction无处不在,而且功能强大!通过Javascript函数可以让JS具有面向对象一些特征,实现封装、继承等,也可以让代码得到复用。但事物都有两面性,Javascript
javascript中声明函数方法有两种:函数声明函数表达式区别如下:1)以函数声明方法定义函数,函数名是必须,而函数表达式函数名是可选2)以函数声明方法定义函数,函数可以在函数
记得在面试腾讯实习生时候,面试官问了我这样一道问题。代码如下://下述两种声明方式有什么不同functionfoo(){};varbarfunctionfoo(){};当初只知道两种声明方式一个是函
平时再用js写函数时候,一般都是以惯例functionfn(){}方式来声明一个函数,在阅读一些优秀插件时候又不免见到varfnfunction(){}这种函数创建,究竟他们用起来有什么区别
函数表达式函数声明在ECMAScript中,创建函数最常用两个方法是函数表达式函数声明,两者期间区别是有点晕,因为ECMA规范只明确了一点:函数声明必须带有标示符(Identifier)(
还是一样,先上代码:代码如下:<script>varffunctiong(){return1;};if(false){ffunctiong(){return2;};}alert(g());
前两天班级聚会,除了吃喝玩乐就是睡觉扯淡,甚是喜悦,真是独乐乐不如众乐乐啊。PS:毕业或即将毕业有时间能聚就聚吧,毕了业以后属于自己时间能聚到一块儿可就少太多了。现在有点时间来看点东西总结些东西
前言在ECMAScript中,有两个最常用创建函数对象方法,即使用函数表达式或者使用函数声明。对此,ECMAScript规范明确了一点,即是,即函数声明必须始终带有一个标识符(Identifie