匿名函数调用方法_javascript匿名函数

匿名函数调用方法_javascript匿名函数首先看一下普通函数和匿名函数的区别//普通函数functionsum(a,b){ returna+b; console.log(“我是一个普通函数”) }//匿名函数,不能单独使用function(a,b){ returna+b; console.log(“我是一个匿名函数”) }没错,匿名函数简单来说就是普通函数去掉名字,但是他不能单独定义与使用,下面是匿名函数的一些使用场景:用于函数表达式、作为返回值、用于定义对象方法、作为回调函数、用于立即执行函数、用于DOM元素注

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

首先看一下普通函数和匿名函数的区别

//普通函数
function sum(a,b){ 
   
	return a+b;
	console.log("我是一个普通函数")
	}
//匿名函数,不能单独使用
function (a,b){ 
   
	return a+b;
	console.log("我是一个匿名函数")
	}

没错,匿名函数简单来说就是普通函数去掉名字,但是他不能单独定义与使用,下面是匿名函数的一些使用场景:

用于函数表达式、作为返回值、用于定义对象方法、作为回调函数、用于立即执行函数、用于DOM元素注册事件

1.用于函数表达式

var sum = function (num1, num2) { 
   
return num1 + num2;
};
console.log(sum(2, 3));

2.作为返回值

function sum(sum1, sum2) { 
   

return function() { 
   

return sum1 + sum2;
	}
}
console.log(sum(2, 3)); // [Function]
console.log(sum(2, 3)()); // 5

3.用于定义对象方法

var obj = { 
   
	name: 'uakora',
	age: 27,
	foo: function() { 
   
		console.log(this.name + ' ' + this.age);
	}
};
obj.foo(); // uakora 27

4.作为回调函数

setTimeout(function() { 
   
console.log('匿名函数作为回调函数');
}, 1000);

4.用于执行立即函数

常用形式一:名函数后面跟一个括号,再将整个包裹在一个括号运算符中
(function() { 
   
console.log('立即执行函数是基于匿名函数创建的');
}());
常用形式二:将匿名函数包裹在一个括号运算符中,后面再跟一个括号

(function () { 
   undefined

console.log('立即执行函数');

})();
 // !!!特别说明:若此立即执行函数后面立马又跟着一个立即执行函数,一定要在结尾加分号,否则后面的立即执行函数会报错!

5.用于DOM元素注册时间

<button id="btnEvent">click me</button>
let btn=docunment.getElementById("btnEvent")
btn.onclick=function(){ 
   
	console.log("DOM元素注册时间")
	}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186474.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Chrome Devtool 断点[通俗易懂]

    Chrome Devtool 断点[通俗易懂]代码行断点代码中的代码行断点console.log(‘a’);console.log(‘b’);debugger;console.log(‘c’);DOM更改断点单击元素选项卡转到要设置断点的元素右键单击该元素将鼠标悬停在Break上,然后选择Subtree修改、属性修改或节点删除DOM更改断点的类型子树修改属性修改节点移除XHR/获取断点当在XHR请求URL包含特定字符串时中断展开XHRBreakpoints点击+输入字符串。当此字符串出现在X

    2022年9月26日
    0
  • atitit.html5 vs 原生 app的区别与选择

    atitit.html5 vs 原生 app的区别与选择

    2021年9月4日
    66
  • C语言之学生管理系统代码(完整)「建议收藏」

    C语言之学生管理系统代码(完整)「建议收藏」<spanstyle=”font-size:18px;”>#include<stdio.h>#include<stdlib.h>#defineFILENAME”student.dat”typedefenum{MAN,WOMAN}SEX;typedefstructtagStudent{ intnum; //学生…

    2022年7月26日
    3
  • 动态调整线程池参数实践

    动态调整线程池参数实践欢迎大家关注我的微信公众号【老周聊架构】,Java后端主流技术栈的原理、源码分析、架构以及各种互联网高并发、高性能、高可用的解决方案。一、线程池遇到的挑战我们上一篇《一文读懂线程池的实现原理》已经从线程池如何维护自身状态、线程池如何管理任务、线程池如何管理线程三个维度来深入剖析线程池的底层原理与源码剖析,这让我们对线程池的原理有了较为深入的理解。这对我们多线程编程有很大的帮助,但在使用线程池时还是会面临几个棘手的问题。开发人员个人经验与水平参差不齐,配置线程池参数都是按照自己想法来,没有统一.

    2022年6月5日
    91
  • pycharm2021激活码【2021.7最新】

    (pycharm2021激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~M…

    2022年3月21日
    65
  • Spring中@Transactional事务回滚(含实例详细讲解,附源码)

    Spring中@Transactional事务回滚(含实例详细讲解,附源码)

    2020年11月12日
    155

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号