news 2026/8/15 9:34:43

16届蓝桥杯

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
16届蓝桥杯

1.元素周期表

/* TODO 待补充代码 Start*/ /* 根据题意先用flex布局,使元素周期表横向排列 */ .container .table { display: flex; } /* 再用题意的var函数写出一格的margin-top */ .container .table .interval1 { margin-top: var(--interval); } /* 这里需要三格margin-top所以要用calc函数 */ .container .table .interval3 { margin-top: calc(var(--interval) * 3); } /* TODO End */

2.每日签到

JS控制DOM元素,并使用到了日期类

// TODO:请补充代码 // 先给signInBtn绑定一个点击事件 signInBtn.addEventListener('click', function () { // 获取当前系统的时间 const time = new Date().getDate() // 获取daysBox中所有的日期 const p = daysBox.querySelectorAll('p') // 用forEach遍历全部的p p.forEach(item => { // 用parseInt把日期字符串转化为整数 // 用if语句判断给与系统日期相符的日期添加active类 if (parseInt(item.innerHTML) === time) { item.classList.add('active') } }) // 给signInBtn添加no-active类 signInBtn.classList.add('no-active') // 秀修改signInBtn的文本 signInBtn.innerHTML = '明天也要记得来哦' }) // TODO:END

3.你还在等我吗

JS中localStorage函数和setTimeout函数的使用

setItem(key, value, expired) { // TODO 待补充代码 // 存储key和value localStorage.setItem(key, value) // 使用延迟执行函数达到在有效时长后清除数据 setTimeout(function () { localStorage.removeItem(key) }, expired) } getItem(key) { // TODO 待补充代码 // 返回获取的数据 return localStorage.getItem(key) } removeItem(key) { // TODO 待补充代码 // 删除数据 localStorage.removeItem(key) }

4.地址识别

JS正则表达式

要记一下常见的正则表达式

function parseContactInfo(text) { // TODO: 请补充代码 // 将字符串按空格分割为几个数组 split(' ')是把空格作为分割符 let result = text.split(' ') // 定义正则表达式 const reg1 = /^[\u4e00-\u9fa5]{2,4}$/ const reg2 = /\d{11}$/ const reg3 = /^[\u4e00-\u9fa5][A-Za-z0-9\u4e00-\u9fa5]{3,}$/ //声明变量 let name let phone let address // 使用for循环,遍历切割后的数组,将符合条件的赋值给对应的 for (let i = 0; i < result.length; i++) { // .test() 检测一个字符串是否符合当前的正则 if (reg1.test(result[i])) { name = result[i] } else if (reg2.test(result[i])) { phone = result[i] } else if (reg3.test(result[i])) { address = result[i] } } // 返回解析的数组 return {name: name, phone: phone, address: address} }

5. 文本自动生成器 (看不懂题目)

JS递归

function compose(...middlewares) { // TODO : 待补充代码 // 返回一个新函数,initalValue是中间件传输的初始值,callback被调用的最终结尾函数 return (initalValue, callback) => { // 用index代表当前执行到第几个中间件,index = 0 代表第一个中间件 let index = 0 // 定义next函数 function next (str) { // 更新当前传递值 initalValue = str // 判断是否还有未执行的中间件 if (index < middlewares.length) { // 取出下一个要执行的中间件函数 const fn = middlewares[index] // 标记执行过的中间件 index++ // 执行当前中间件函数 fn (initalValue, next) } else { // 没有中间件就返回最终结尾的函数 callback(initalValue) } } // 开启第一个中间件 // 判断是否传入至少一个中间件 if (middlewares.length > 0) { // 取出第一个要执行的中间件函数 const firstFn = middlewares[0] // 给索引号+1 index++ // 执行第一个中间件函数 firstFn (initalValue, next) } else { // 如果是一个空数组,中间返回最终结尾的函数 callback (initalValue) } } }

7.企业微信会议助手

// 目标1 const fetchMeetingData = async () => { // TODO: 待补充代码 // fetch 向本地./js/meetings.json文件发起 GET 请求,获取原始响应对象 // .then(res => res.json()) // 将响应体解析为JSON形式,得到JS对象 return fetch('./js/meetings.json').then(res => res.json()).then(res => { // 从JSON中提取title/time/location,组装成对象存入 meeting.value = { title: res.title, time: res.time, location: res.location } // 直接将JSON中的participants数组存入 participants.value = res.participants }) }; const formatDate = (dateStr) => { // TODO: 待补充代码 // if语句避免传入空值时出问题 if(dateStr){ // 将日期按照-拆分为数组 let [year,month,day] = dateStr.split('-'); // 如果月份/日期的长度不足2,就在前面加0 if(month.length<2) month = '0'+month; if(day.length<2) day = '0'+day; // 返回符合格式的字符串 return year+'-'+month+'-'+day } };
// 目标2 <!-- TODO: 待补充代码 --> <tr v-for="item in participants"> <td>{{item.name}}</td> <td><span :class="statusClass(item.status)">{{item.status}}</span></td> </tr> const statusClass = (status) => { // TODO: 待补充代码 // 用if判断接收参数status:表示参会状态 // 返回与状态对应的CSS类名字符串 if (status === '待确认') { return 'status-pending' }; if (status === '已接受') { return 'status-ready' }; if (status === '已拒绝') { return 'status-declined' } };
// 目标3 function myAllSettled(promises) { // TODO: 待补充代码 // 不能使用 Promise.allSettled, Promise.all,Promise.race 等方法 return new Promise((resolve, reject) => { // 初始化变量 // res 存储每个Promise的执行结果 // cnt 记录已完成的Promise数量 let res = [], cnt = 0; // 遍历Promise数组 promises.forEach((item,index) => { // 给当前Promise注册成功回调 item.then((result) => { // 将成功结果存入结果数组的对应位置 res[index] = result cnt ++; // 判断是否所有Promise都已完成 if (cnt == promises.length) // 全部完成后,调用resolve并返回结果数组res resolve(res); }); }) }); }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 16:01:06

Wan2.1 VAE企业级应用:构建高可用内网穿透AI服务

Wan2.1 VAE企业级应用&#xff1a;构建高可用内网穿透AI服务 很多企业技术团队在引入像Wan2.1 VAE这样的AI模型时&#xff0c;都会遇到一个两难的局面&#xff1a;模型服务部署在公司内网&#xff0c;安全是保证了&#xff0c;但外部的业务系统、合作伙伴或者移动应用想调用它…

作者头像 李华
网站建设 2026/7/14 16:01:08

Cesium3Dtilesets中customShader的实战解析与动态光效实现

1. 从零开始&#xff1a;为什么我们需要CustomShader&#xff1f; 如果你用过Cesium加载过3D Tiles数据&#xff0c;比如城市建筑、倾斜摄影模型&#xff0c;第一感觉可能是“哇&#xff0c;真酷&#xff01;”&#xff0c;但看久了&#xff0c;是不是觉得有点……平淡&#xf…

作者头像 李华
网站建设 2026/7/14 16:01:09

2025年AI图像生成器实战指南:从入门到精通

1. 从零开始&#xff1a;2025年&#xff0c;为什么你绕不开AI图像生成&#xff1f; 如果你最近刷社交媒体、看新闻&#xff0c;或者浏览一些设计网站&#xff0c;可能会发现一个有趣的现象&#xff1a;很多看起来特别酷、特别有创意的图片&#xff0c;底下都悄悄标注着“AI生成…

作者头像 李华
网站建设 2026/7/14 16:01:22

微软DriverSiPolicy.p7b文件解析:为什么火绒安全驱动会被突然拉黑?

微软安全策略的“误伤”与“自保”&#xff1a;从火绒驱动被拉黑看Windows安全机制的深层逻辑 最近&#xff0c;安全圈里发生了一件让不少技术爱好者和IT管理员感到困惑的事&#xff1a;在Windows 11最新的Beta测试版更新中&#xff0c;微软的“易受攻击驱动程序阻止列表”将火…

作者头像 李华
网站建设 2026/7/14 16:01:21

CogVideoX-2b使用技巧:如何写出更有效的英文提示词(Prompt)

CogVideoX-2b使用技巧&#xff1a;如何写出更有效的英文提示词&#xff08;Prompt&#xff09; 如果你用过CogVideoX-2b&#xff0c;可能有过这样的体验&#xff1a;输入一段中文描述&#xff0c;满怀期待地点击生成&#xff0c;结果出来的视频却和想象中不太一样——猫的尾巴…

作者头像 李华
网站建设 2026/7/14 16:01:20

运维实战:监控与维护大型国风模型生成平台的可用性

运维实战&#xff1a;监控与维护大型国风模型生成平台的可用性 最近接手了一个挺有意思的项目&#xff0c;负责保障一个企业级国风模型生成平台的稳定运行。这个平台每天要处理海量的图片生成请求&#xff0c;从山水画到古风人像&#xff0c;业务量不小。刚开始那会儿&#xf…

作者头像 李华