这是我参与11月更文挑战的第8天,活动详情查看:2021最后一次更文挑战
写在前面:
- 个人前端网站:zhangqiang.hk.cn
- 欢迎加入博主的前端学习qq交流群::706947563,专注前端开发,共同学习进步!
0 前言
之前在js里面写函数调用时意外,我在程序下面定义了个函数,然后在这个函数上面调用它,竟然调用不成功!? 几经周转,然后就了解到了函数声明、函数提升、函数表达式这个知识点(以前应该知道,但是现在更深刻)。
在这里,大家也可以先了解一下变量提升的概念:
JavaScript: 变量提升和函数提升:www.cnblogs.com/liuhe688/p/…
我认为这个也有助于本章的学习理解。
1 函数声明:
function f(){ 函数体;}
如上代码,我们用function定义并声明了一个函数,函数名为f,当我们在这个函数的上面或下面写 f();这个语句的时候,都是可以调用这个函数的。但是正常这个情况下,我们应该先声明再调用的嘛,那么这就涉及到函数提升的概念啦(看下面那个知识点)。哎嘿,只有这种写法是可以函数提升的,但是正常情况下我们都是采用的第3个知识点(函数表达式)的写法。
2 函数提升:
函数声明能在其所在作用域的任意位置被调用,但是在其声明后面才能进行变量赋值(函数表达式)。
3 函数表达式:
const f = function(){ 函数体;}
如上代码,这是一个函数表达式,函数表达式可以存储在变量或者对象属性中,我们要调用它只能在它的下面调用,调用的写法为f();
好啦,本次就记录这么多了~ 如果你有什么收获或感想欢迎在博客下方留言一起讨论哈~~
参考:
js声明函数的几种方式:blog.csdn.net/qq_35415307…