当前位置: 首页 > news >正文

网站备份数据库白鹭引擎可以做网站吗

网站备份数据库,白鹭引擎可以做网站吗,iis网站批量导入,厦门网站做优化目录 目标 语法结构 应用场景 数据隐藏和封装 函数柯里化 异步延迟回调 目标 了解闭包的语法结构与应用场景。了解Python的同学可以对比一下我之前写的Python闭包文章,两者非常相似。 语法结构 以下两种书写方式是等价的。 //方式一 function outer(){functi…

目录

目标

语法结构

应用场景

数据隐藏和封装

函数柯里化

异步延迟回调


目标

        了解闭包的语法结构与应用场景。了解Python的同学可以对比一下我之前写的Python闭包文章,两者非常相似。


语法结构

        以下两种书写方式是等价的。

//方式一
function outer(){function inner(){}return inner
}
//方式二
function outer(){return function inner(){}
}

应用场景

数据隐藏和封装

需求

        在环境监测项目中,我们需要定期获取气象数据(比如:降雨量)。这些数据十分敏感,我们可以使用闭包来封装和隐藏这些数据,确保它们只能通过合法的方式进行访问或修改。

function create_rain_sensor(init_value){function update_init_value(){if (init_value<0){init_value=null}else{//四舍五入保留2位小数init_value = Number(init_value.toFixed(2));}console.log(init_value)}return update_init_value
}// 创建雨量传感器并初始化为 -1
const rainSensor = create_rain_sensor(-1);
rainSensor();  // 输出 null// 创建雨量传感器并初始化为 12.3456
const rainSensor2 = create_rain_sensor(12.3456);
rainSensor2();  // 输出 12.35

函数柯里化

        柯里化是将多个参数的函数转换为单一参数的函数,并且返回每个单一参数函数,直到所有参数都被提供。这对于延迟执行和函数组合非常有用。

需求一

        返回两个数字相乘的结果。

function outer(a){return function inner(b){return a*b}
}const inner=outer(2)
//避免重复传递参数。
console.log(inner(6))
console.log(inner(7))
console.log(inner(8))

需求二

        绑定li的点击事件。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>图书馆</title></head>
<body><h1>小说</h1><ul><li>凡人修仙传</li><li>诛仙</li><li>鹿鼎记</li><li>天龙八部</li></ul><script>let allLi=document.querySelectorAll("li")for(var i=0;i<allLi.length;i++){allLi[i].onclick=(function(index){return function(){alert("点击了第"+index+"个li标签。")}})(i)}</script></body>
</html>

异步延迟回调

        异步执行过程中可能会导致变量被污染,比如下面的代码,每次都输出相同的结果:

//这里先不考虑使用let创建变量。
for (var i = 1; i <= 3; i++) {setTimeout(function () {//第 4 次执行console.log(`第 ${i} 次执行`);  }, i * 1000);
}

需求

        使用闭包将上述案例修改正确。

for (var j = 0; j <= 3; j++) {(function (index) {setTimeout(function () {console.log(`第 ${index} 次执行`);}, index * 1000);})(j);
}
http://www.dtcms.com/a/582393.html

相关文章:

  • 微信小程序:onReady详解
  • 使用docker-compose启动springboot
  • 推销别人做网站有什么作用最近七天的新闻大事
  • A模块 系统与网络安全 第四门课 弹性交换网络-5
  • 做企业网站要用什么软件深圳商城网站设计费用
  • 网站备案名称重复wordpress如何安装模板文件夹
  • 如何解析和测试JSON/XML格式的响应?
  • 网站最上面标题怎么改做网站的为什么不给域名和密码
  • MySQL B+树
  • 模板网站建设教程wordpress符号插件
  • 新昌县城乡建设局网站dede建设网站
  • 做网站合肥手机单机游戏网站大全
  • 每周资讯 | 印度数字媒体与娱乐市场在2025财年达93亿美;《崩坏:星穹铁道》新版本登顶iOS畅销榜首
  • electron基础
  • 用中文版wordpress建英文站企业网站建设有哪些
  • 什么是CPU分支预测?
  • AI 技术助力汽车美容行业实现精细化运营管理
  • C语言应用实例:硕鼠游戏,田忌赛马,搬桌子,活动选择(贪心算法)
  • python+django/flask的医院财务管理系统
  • 网站开发常用框架电子商务网站建设的方法有哪些
  • 如何挑选出色的展厅机器人
  • 那种退不掉的网站怎么做的wordpress代码块
  • 锁机制详解:公平锁与非公平锁
  • 用vs2010做网站教程哪里网站建设便宜
  • 广州专业制作网站杭州网络优化公司排名
  • 建信建设投资有限公司网站网络营销品牌推广
  • asp 网站卡死多层次网络营销合法吗
  • 网站建设项目资金申请报告策划书的推广与运营
  • 网站开发可选择的方案学做立体书的网站
  • 网站建站流程网页设计制作页面