函数声明
function func() { console.log('this is a function') };
首先使用 function
关键字声明一个函数,再执行一个函数名,叫函数声明。
函数表达式
let func = function() { console.log('this is a function') };
使用 function
关键字声明一个函数,但未给函数命名,将匿名函数赋予一个变量,叫函数表达式,这是最常见的函数表达式语法形式。
匿名函数
function() { console.log('this is a function') };
使用 function
关键字声明一个函数,但未给函数命名,所以叫匿名函数,匿名函数属于函数表达式,匿名函数有很多作用,赋予一个变量则创建函数,赋予一个事件则成为事件处理程序或创建闭包等等。
函数声明和函数表达式区别
1、JavaScript 引擎在解析 JavaScript 代码时会“函数声明提升”当前执行环境(作用域)上的函数声明,而函数表达式必须等到 JavaScript 引擎执行到它所在行时,才会从上而下一行一行地解析函数表达式。
2、函数表达式后面可以加括号立即调用该函数,函数声明不可以,只能以 func() 形式调用。
我们看一下下面的例子就会明白
函数声明
func(); //正常输出this is a function
function func() {
console.log('this is a function')
};
函数表达式
func();// Uncaught SyntaxError: Invalid or unexpected token
//函数表达式报错,func未保存对函数的引用,函数调用需放在函数表达式后面
var func = function() {
console.log('this is a function')
};
版权声明:本文为CSDN博主「xu_song」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/xu_song/article/details/107077675