网上很流行的黑客帝国代码雨,看起来很酷炫是不是,那么要如何实现呢?

咱们先看CSS这里,这一小段作用有点大,margin为0,就填充了整个窗口,放大缩小都不会影响。还有overflow超出隐藏,这里直接隐藏了滚动条。

下面这段代码使用了const,而const声明一个只读的常量,声明之后就不能修改了,所以在声明的同时也要进行赋值。但是在这里,我们不能修改一二三五行,而第四行我们可以进行重新赋值。这是为什么呢?

其实我们只是修改了里面的元素,而无法进行赋予其一个行的数组。

上面的代码定义了一个方法,也是“下雨”的关键操作。其实是每个单独字的闪烁来实现的,事先规划好样式,然后通过arr来调用map方法,实现字符的随机填充以及按照指定的顺序依次闪烁,超过屏幕高度或者达到随机定义的高度便会顶端再次重新闪烁。

数组arr通过调用forEach方法,将数组中每个元素在第一行进行打印,然而,forEach方法是没办法改变原数组的,所以才需要第三行代码:

arr[index] = value >= height || value > 8888 * Math.random() ? 0 : value + 10;

来手动改变数组元素,如果没有这一行,大家分析分析会发生啥,没错,第一行一直刷新。

setInterval(rain, 30);

这是最重要的一行代码,简直就是整个代码块的核心方法,因为只有他出现了,大家看到的才会有这漫天飞舞的字母。

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

道家真言也是差不多的做法,只是增加了一些代码。

上面的50均是因为字体是50px大小。

以上是本期技术分享的所有内容,如果觉得有兴趣可以自行学习相关内容。需要源码的小伙伴可以留言邮箱。

往期精选

更新于2020年09月19日

● 技术者丨你对JavaScript知多少(第三期)

●技术者丨你对JavaScript知多少(第二期)

●技术者丨你对Javascript知多少

●技术者 | 快来学习CTF,来遇见属于你的“现”男(女)友吧

●技术者 | 专业收大学习30年,满满的干货教程~

●技术者 | 满满的“干货”教程,教你搭建人与网络的“桥梁”

●技术者 | 初探HTML5:学习制作学校网页

●技术者 | 学习制作学校网页第二期,制作焦点图

●技术者 | 网页制作第三期,制作新闻导航

●技术者 | 网页制作第四期,底部的制作

●技术者 | Ps之快速换脸,杨洋瞬间变张艺兴

●技术者丨教你做简单的ps文字穿插图案效果海报

●技术者丨假装自己是个绘画大师!!!

●技术者丨Premiere视频制作第一期,制作复仇者联盟片头

●技术者丨你不了解的编程语言“Python”

持续更新中

请关注公众号噢

...

汽车与信息工程学院团委宣传部

责编 | 胡昌伟

审核 | 严斌斌 章静豪

qfile指定从多少行开始_技术者丨你对JavaScript知多少(第四期)相关推荐

  1. qfile指定从多少行开始_大牛进化路上之Linux基础命令,看看你了解多少?

    玩转Linux系统还是要从基础命令开始,基础命令是你大牛发展之路的第一步,扎实的基本命令操作功底才能在工作中游刃有余,下面我们就来看看吧. 路径切换说明 Linux中分绝对路径和相对路径,绝对路径一定 ...

  2. java生成sm4算法的对称密钥_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...

    原标题:技术分享丨这是一篇简单的小科普--什么是对称加密算法?(下) 大家好~我是贾正经,又到了干货满满的技术分享趴啦~ 上期我们讲解了对称加密算法的小知识,并介绍了国密算法中SM4算法的原理. 本期 ...

  3. 设计有三个窗口的框架结构网页_技术周刊丨钢框架结构直接分析设计与传统设计方法对比研究——恒荷载作用结果对比...

    ▲ 点击上方蓝字,关注SAUSAGE非线性!作者:侯晓武 丨 职位:技术经理 仁荷大学(韩)建筑工学博士 曾任建筑软件(MIDAS Gen/Building)技术负责人 拥有11年建筑软件技术支持经验 ...

  4. 多少行数_技术分享 | MySQL:查询字段数量多少对查询效率的影响

    作者:高鹏 文章末尾有他著作的<深入理解 MySQL 主从原理 32 讲>,深入透彻理解 MySQL 主从,GTID 相关技术知识. 这个问题是最近一个朋友问我的.刚好就好好看了一下,留下 ...

  5. 对称加密算法_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...

    大家好~我是贾正经,又到了干货满满的技术分享趴啦~ 上期我们讲解了对称加密算法的小知识,并介绍了国密算法中SM4算法的原理.(上集回顾) 本期带大家了解一下分组密码的五个模式. 分组密码的模式 首先了 ...

  6. tcp分包传图片 如何还原_技术控丨超详细解析TCP重传机制

    作者:Zhang_Jiawen : 来自:Dell技术社区 TCP 的主要任务是很简单:打包和发送数据.TCP 与其他协议的不同之处在于使用滑动窗口来管理基本数据收发过程,同时确保数据流的有效及可靠传 ...

  7. yolov3模型识别不出训练图片_技术实践丨基于MindSpore框架Yolov3-darknet模型的篮球动作检测体验...

    摘要:通过对篮球动作的分类训练及识别检测实例的讲解和体验,使我们了解了Yolov3模型的原理.架构等基本知识,为日后的深入学习奠定了基础. 背靠全新的设计理念,华为云推出了 MindSpore深度学习 ...

  8. 德富莱智能抹墙机器人_技术谈丨广田智能抹墙机器人,让建筑不再受制于人

    机器人,变革时代下的前瞻布局 "中国制造2025"作为中国制造业未来10年的顶层规划,基本思路是借助工业技术和信息技术的结合,改变中国制造业现状,令中国到2025年跻身现代工业强国 ...

  9. ue4渲染速度太慢_技术汇丨如何在UE4中实现最佳性能和高质量视觉效果

    合并网格 如之前在线框可视化解释中提到的,减少三角形和顶点的数量永远都是提高性能的方法,但是很多时候,一个单独网格比多个网格刻画集合图形的性能要好得多(一个有1000个顶点的网格可能比10个有100个 ...

最新文章

  1. 旷视提双边分支网络BBN:攻坚长尾分布的现实世界任务 | CVPR 2020 Oral
  2. blog微服务架构代码_聊聊微服务架构
  3. python工程师月薪-在三线城市,Python工程师也能拿到月薪20K?
  4. leetcode-6-Z 字形变换
  5. oracle 中 start tran,The value (30) of MAXTRANS parameter ignored
  6. 前端JavaScript开发中需要注意的代码问题
  7. thinkphp 访问根目录文件
  8. BP神经网络及其设计的一般原则
  9. CorelDRAWX4的VBA插件开发(二十六)深度转曲之包含容器内文字转曲
  10. Linux计划任务写入保存命令
  11. 十道解分式方程及答案_10道解分式方程练习题及答案.doc
  12. 英飞凌TC397移植FreeRTOS
  13. android菜鸡提升之路---实现一个积木拼图游戏
  14. Linux启动流程之ROM-CODE
  15. cas 部署过程中遇到的一些问题(持续更新)
  16. 浅谈PHP代码执行的大致流程(opcode)
  17. c语言随机生成四则运算10道,c语言编10道四则运算题
  18. 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一
  19. STM32系统时钟设置(标准库)
  20. 关于计算机有用英语作文带翻译,关于健康的英语作文带翻译

热门文章

  1. 上半年财产保险公司原保险保费收入排行(国寿财险发展比较生猛)
  2. 本人亲测竹鼠活下去到底好不好玩?你能活几天呢?
  3. 99乘法表的两种写法
  4. mac电脑安装python_mac电脑怎么安装python
  5. vr加盟项目现在怎么样?vr加盟需要多少钱?
  6. antd table表格错位
  7. 智能配置运维系统开发工具链
  8. 华为鸿蒙拍照,华为首部鸿蒙手机P50来了!顶级拍照再升级,麒麟芯片或绝唱……...
  9. BIM+GIS应用的八大挑战
  10. 父组件调用子组件方法-useRef