JS 匿名函数——几种不同的调用方式[通俗易懂]

JS 匿名函数——几种不同的调用方式[通俗易懂]匿名函数有两种用法: 1.赋值 vara=function(){}; 2.自我执行这里我总结了4种匿名函数调用方法: //1. functionshow(){ document.write(‘nihao’); } show(); //2. (function(){ document.write(‘wohao’); })();…

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

Jetbrains全系列IDE稳定放心使用

匿名函数声明和使用

匿名函数有两种用法:
  • 赋值
  • 自我执行

1.声明一个匿名函数,直接赋值给某一个事件

windon.onload = function(){ 
   
	alert('hello');
};

2.使用匿名函数表达式。将匿名函数,赋值给一个变量。

声明:var func=function(){ }
调用:func();

var show = function(){ 
   
	alert('hello');
};
show();

注意:使用匿名函数表达式时,函数的调用语句,必须放在函数声明语句之后!!!
原因:检查装载时,会先对show变量及这个匿名函数声明,此时,还未将匿名函数赋值给show变量,如果在表达式之前调用,会报错 show is not a function

js代码的执行顺序问题
js代码在运行时,会分为两大部分———检查装载 和 执行阶段。

  • 检查装载阶段:会先检测代码的语法错误,进行变量、函数的声明
  • 执行阶段:变量的赋值、函数的调用等,都属于执行阶段。

3.自执行函数。这里我总结了8种常用的匿名函数调用方法:

//1.使用 !开头,结构清晰,不容易混乱,推荐使用;
!function(){ 
   
	document.write('ni hao');
}()
	
//2.无法表明函数与之后的()的整体性,不推荐使用。
(function(){ 
   
	document.write('wo hao');
})();

//3.能够将匿名函数与调用的()为一个整体,官方推荐使用;
(function(){ 
   
	document.write('hello');
}());

//4.放在中括号内执行
[function(){ 
   
	document.write('world');
}()];

//5.使用 + 运算符
+function(){ 
   
	document.write('ni hao');
}()

//6.使用 - 运算符
-function(){ 
   
	document.write('ni hao');
}()

//7.使用波浪符 ~
~function(){ 
   
	document.write('ni hao');
}()

//8.使用 void
void function(){ 
   
	document.write('ni hao');
}()

看都看到这了,留下三连吧   ——点赞、收藏、留言。

福利:自己总结的 前端常用插件

个人博客:https://zugelu.com,欢迎参观
github地址:https://github.com/luzhe0359/blog_web ,欢迎start

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/186116.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • myeclipse8.5注册码在线生成_myeclipse注册码永久

    myeclipse8.5注册码在线生成_myeclipse注册码永久这几天myeclipse弹出注册码过期,去网上一搜,要么已过期,要么就剩一两个月。倒腾了半天,自己申请了几个注册码,给大家分享一下Subscriber:huazaiSubscriptionCode:uLR8ZC-855550-61565856301609203Subscriber:feifeiSubscriptionCode:sLR8ZC-855550-615658

  • 什么是协程_什么时候使用协程和线程

    什么是协程_什么时候使用协程和线程先搞清楚,什么是协程。你可能已经听过『进程』和『线程』这两个概念。进程就是二进制可执行文件在计算机内存里的一个运行实例,就好比你的.exe文件是个类,进程就是new出来的那个实例。进程是计算机系

  • Linux解压缩.tar.bz2

    Linux解压缩.tar.bz2.bz2结尾的文件是bzip2压缩的结果。tar命令使用-j这个参数来调用gzip压缩或者解压缩.tar.bz2。压缩$tar-cjfimages.tar.bz2./images/解压缩tar-xjfimages.tar.bz2…

  • html表格合并纵向单元格_单元格居中对齐怎么设置

    html表格合并纵向单元格_单元格居中对齐怎么设置表格合并(水平和垂直方向) 北京上海济宁 深圳广州泰安

  • 深度学习在图像处理中的应用(tensorflow2.4以及pytorch1.10实现)

    深度学习在图像处理中的应用(tensorflow2.4以及pytorch1.10实现)本人在读研期间的研究方向是图像处理以及深度学习(主要是图像分类和目标检测)。在做深度学习时使用的是tensorflow深度学习框架,学习全是自学,很多资源都是在Github上找的。我发现现在Github上很多深度学习的开源项目都是用的tensorflow和pytorch框架。所以现在也开始学习pytorch框架,之前一直用的是tensorflow1.x版本,今年正好迎来了新的tensorlfow大…

  • flag_activity_new_task 简单_activity启动流程图解

    flag_activity_new_task 简单_activity启动流程图解当在一个的activity以FLAG_ACTIVITY_NEW_TASK的方式启动另一个已经启动的activity时,需要设置intent.addCategory(Intent.CATEGORY_LAUNCHER);intent.setAction(Intent.ACTION_MAIN);否则将要打开的activity会重走一遍onCreate(),加上之后会直接调用之前的acti

发表回复

您的电子邮箱地址不会被公开。

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