JavaScript闭包的简单应用
发布时间 - 2026-01-11 03:03:56 点击率:次闭包定义

在JavaScript中,当一个内部函数被其外部函数之外的变量引用时,就形成了一个闭包。简单说,闭包就是能够读取其他函数内部变量的函数。
闭包的作用:
1. 可以读取函数内部的变量
2. 让这些变量的值始终保持在内存中。
闭包简单应用
例一:
function a() {
var i = 0;
function b() {
console.log(++i);
}
return b;
}
var c = a(); //执行完var c=a()后,变量c指向了函数b,再执行c()后就会显示i的值(为1)。
c(); //输出1
例二:
(function() {
var i = 0;
return function(){
console.log(++i);
}
})()(); //输出1
例三:
(function(i) {
return function(){
console.log(++i);
}
})(0)(); //输出1
例四:
for (var i = 0; i < 3; i++) {
setTimeout((function(i) {
return function() {
console.log(i);
};
})(i), 2000);
console.log(i+10);
} //输出 10 11 12 (隔两秒后)0 1 2
例五:
for (var i = 0; i < 3; i++) {
setTimeout((function(i) {
return function() {
console.log(i);
};
})(i)(), 2000);
console.log(i+10);
} //立即输出 0 10 1 11 2 12 ,(两秒后运行程序结束)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 闭包
# 一文详解JavaScript闭包典型应用
# 关于Javascript闭包与应用的详解
# js核心基础之闭包的应用实例分析
# JS闭包原理与应用经典示例
# 详谈JavaScript的闭包及应用
# javascript 闭包详解及简单实例应用
# JS 循环li添加点击事件 (闭包的应用)
# JavaScript闭包的深度剖析与实际应用小结
# 就会
# 形成了
# 始终保持
# 大家多多
# brush
# strong
# var
# function
# class
# br
# pre
# JavaScript
# console
# 两秒后
# 例五
# 隔两秒后
# 例二
# return
# log
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
中国移动官方网站首页入口 中国移动官网网页登录
如何快速生成可下载的建站源码工具?
Laravel如何实现一对一模型关联?(Eloquent示例)
SQL查询语句优化的实用方法总结
phpredis提高消息队列的实时性方法(推荐)
canvas 画布在主流浏览器中的尺寸限制详细介绍
php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
JavaScript如何操作视频_媒体API怎么控制播放
Linux安全能力提升路径_长期防护思维说明【指导】
Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理
如何在阿里云完成域名注册与建站?
Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境
Laravel如何处理和验证JSON类型的数据库字段
如何快速查询网站的真实建站时间?
Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】
Laravel怎么上传文件_Laravel图片上传及存储配置
Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程
如何在Windows虚拟主机上快速搭建网站?
JavaScript实现Fly Bird小游戏
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作
如何快速建站并高效导出源代码?
做企业网站制作流程,企业网站制作基本流程有哪些?
南京网站制作费用,南京远驱官方网站?
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
高性能网站服务器部署指南:稳定运行与安全配置优化方案
Android okhttputils现在进度显示实例代码
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
如何在阿里云虚拟主机上快速搭建个人网站?
Laravel如何使用模型观察者?(Observer代码示例)
HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】
JS弹性运动实现方法分析
零基础网站服务器架设实战:轻量应用与域名解析配置指南
php静态变量怎么调试_php静态变量作用域调试技巧【解答】
如何快速选择适合个人网站的云服务器配置?
php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】
Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录
作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】
如何在IIS7上新建站点并设置安全权限?
高防服务器租用指南:配置选择与快速部署攻略
实例解析Array和String方法
如何挑选优质建站一级代理提升网站排名?
网页设计与网站制作内容,怎样注册网站?
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
php 三元运算符实例详细介绍
Swift中swift中的switch 语句
上一篇:宝塔面板的防火墙设置
上一篇:宝塔面板的防火墙设置

