美文网首页
函数表达式和函数声明有什么区别?

函数表达式和函数声明有什么区别?

作者: 备用的昵称 | 来源:发表于2017-11-07 13:29 被阅读0次

大家好,我是IT修真院成都分院第8期的学员,一枚正直纯洁善良的WEB前端程序员。今天给大家分享一下js中函数表达式和函数声明的区别。


一、什么是FUNCTION EXPRESSION(函数表达式)?

Function Expression 将函数定义为表达式语句(通常是变量赋值)的一部分。通过 Function Expression 定义的函数可以是命名的,也可以是匿名的。Function Expression 不能以“function”开头。

EZ:使用function关键字声明一个函数,但未给函数命名,最后将匿名函数赋予一个变量,叫函数表达式

// 函数声明

function funDeclaration(type){

return type==="Declaration";

}

// 函数表达式

var funExpression = function(type){

return type==="Expression";

}

二、两者具体有哪些区别呢?

(一)函数声明中函数名是必须的;函数表达式中则是可选的

//函数声明

function sum(a, b) {

return a + b;

}

alert(sum(1, 2));

//函数表达式

var s = function sum(a, b) {

return a + b;

}

alert(s(1, 2));

var s = function(a, b) {

return a + b;

}

alert(s(1, 2));

//以上两种都可以

(二)、用函数声明定义的函数,函数可以在函数声明之前调用,而用函数表达式定义的函数只能在声明之后调用。

//函数声明

alert(sum(1, 2));//3

function sum(a, b) {

return a + b;

}

//函数表达式:发生错误

try {

alert(s(1, 2));

var s = function sum(a, b) {

return a + b;

}

}

catch (e) {

alert("wrong!");

}

相关文章

  • 函数

    函数声明和函数表达式有什么区别 函数声明 函数表达式 函数声明和函数表达式的区别: 函数声明必须给定函数名称,函数...

  • 函数与作用域

    函数声明和函数表达式有什么区别 - 函数声明:function functionName(){}  - 函数表达式...

  • task17

    **函数声明和函数表达式有什么区别 **函数声明:function functionname(){};函数表达式:...

  • 函数与作用域

    1、 函数声明和函数表达式有什么区别 函数声明: function functionName( ){ }函数表达式...

  • JS函数

    一、问答1、函数声明和函数表达式有什么区别 ()函数声明和函数表达式都是声明函数的方法。函数声明:function...

  • 函数与作用域

    1. 函数声明和函数表达式有什么区别 函数声明:function functionName(){} 函数表达式:...

  • 进阶任务3(主线任务):函数与作用域

    任务 函数声明和函数表达式有什么区别答:函数声明:function functionName(){}  函数表达式...

  • 函数与作用域

    1. 函数声明和函数表达式有什么区别 函数声明:function functionName(){}  函数表达式:...

  • 进阶任务3

    函数声明和函数表达式有什么区别## 函数声明:function functionName(){}函数表达式:var...

  • 函数与作用域

    函数声明和函数表达式有什么区别? 函数声明:function functionName() {}函数表达式:var...

网友评论

      本文标题:函数表达式和函数声明有什么区别?

      本文链接:https://www.haomeiwen.com/subject/kkxjmxtx.html