JavaScript中函数作为值
function myfunc() { // .. }
这是个函数,这样理解, myfunc只是外层作用域的一个变量,指向刚刚声明的function. 也就是说,function本身就是一个值, 就像 40 或者 [a,b,c]一样.
也就是说,函数本身可以作为一个值赋给变量,或者作为参数传递给其他函数以及作为其他函数的返回值
这样,一个函数值应该被认为是一个表达式,就像任何其他值或表达式
var test = function() { //... }; var a = function table(){ //... };
分配变量test的第一个函数表达式是匿名函数,这个函数没有函数名。
第二个函数是命名(table)函数,尽管它的引用被赋值给变量a.
立即执行函数表达式
上面的函数,我们需要执行,必须调用来执行
test();
x();
还有的函数,不需要这样调用,马上就执行。我们称之为立即执行函数表达式(IIFE, immediately invoked function expression)
(function IIFE(){ // do something })();
立即执行函数也可以有返回值:
var x = (function IIFE(){ return 30; })(); x; //30
IIFE命名函数执行并返回了值42,然后该值被赋给变量x
分类:
JavaScript
标签:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2016-03-07 转载 SharePoint Foundation和SharePoint Server的区别