摘要: 前言 JavaScript从使用开初就一直基于事件循环的单线程运行模型,即使是成功进军后端开发的Nodejs也没有改变这一模型。那么对于计算密集型的应用,我们必须创建新进程来执行运算,然后执行进程间通信实现传参和获取运算结果。否则会造成UI界面卡顿,甚至导致浏览器无响应。从功能实现来看,我们可以通过 阅读全文
posted @ 2021-07-28 17:19 陌路y 阅读(771) 评论(0) 推荐(0) 编辑
摘要: 最近在使用d3 zoom得时候 遇到一个小坑 直接对元素添加 zoom事件 会有很大得抖动,查文档 看代码之后发现是 由于元素在不断变化, 所以计算基础值也不不断变化,所以会导致计算出来得值 忽大忽小 从而造成抖动 解决办法 :在他父元素上添加事件 然后在子元素上添加style 方法 具体代码 _a 阅读全文
posted @ 2021-07-28 17:16 陌路y 阅读(110) 评论(0) 推荐(0) 编辑
摘要: animejs 是现如今非常不错的一个 js 动画库。我们将其与 react Hooks 融合,使它更方便的在 react 中使用。 最终效果: const Animate: React.FC = () => { const { animateTargetRef, animationRef } = 阅读全文
posted @ 2021-07-28 17:15 陌路y 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 1.回调函数 我们编写一个问候的函数,首先创建一个函数greet(name),该函数返回欢迎消息: function greet(name) { return `Hello, ${name}!`; } greet('fly63'); // => 'Hello, fly63!' 如果要向一些人问候怎么 阅读全文
posted @ 2021-07-28 17:14 陌路y 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 模块化编程 在 JavaScript 引入模块化概念之前,当开发人员想要将代码封装时,需要创建多个文件并将这些文件链接为单独的脚本。作者为了说明这一点,创建了一个示例:index.html 文件和两个 JavaScript 文件,functions.js 和script.js。 index.html 阅读全文
posted @ 2021-07-28 17:11 陌路y 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 初识运动 1.停不下来 给定时器添加timer 来判断是否需要停止 2.到目的地,还能点击移动,把移动的代码放入else中 3.重复点击按钮会加速运动 是因为点一次就会启动一次定时器,多次就会启动多次 保证只有一个定时器在启动,启动一次就关闭上一次启动定时器 运动框架: ? 1 启动就关闭定时器? 阅读全文
posted @ 2021-07-28 17:10 陌路y 阅读(75) 评论(0) 推荐(0) 编辑
摘要: babel 本质上是个编译器,所以它所做的基本上就是编译器要做的事,为了避免对编译器的某些东西讲的太细,我们重点只要知道 babel 的工作流程就行了。 转换成AST 第一步可以说是是编译器的基本功能,通过解析器将原始代码转换成抽象语法树(AST),顾名思义就是描述语法的数据结构,一般在这一步编译器 阅读全文
posted @ 2021-07-28 17:09 陌路y 阅读(68) 评论(0) 推荐(0) 编辑
摘要: js 是种弱类型语言,对变量的类型没有限制。例如,如果我们使用字符串类型创建了一个变量,后面又可以为同一变量分配一个数字: let message = 'Hello'; // 分配一个字符串 message = 14; // 分配一个数字 这种动态性为我们提供了灵活性并简化了变量声明。 不好方面,我 阅读全文
posted @ 2021-07-28 17:01 陌路y 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 什么是 GPU.js? GPU.js 是一个针对 Web 和 Node.js 构建的 JavaScript 加速库,用于在图形处理单元(GPGPU)上进行通用编程,它使你可以将复杂且耗时的计算移交给 GPU 而不是 CPU,以实现更快的计算和操作。还有一个备用选项:在系统上没有 GPU 的情况下,这 阅读全文
posted @ 2021-07-28 17:00 陌路y 阅读(982) 评论(0) 推荐(0) 编辑
摘要: js字符串转换数字方方式主要有三类:转换函数、强制类型转换、弱类型隐式类型转换,利用这三类转换的方式可以有5种转换的方法。 parseInt() parseInt()和Number.parseInt()是最常用的转换字符串为整数数值的方法,其中Number.parseInt()是ES6之后为了减少全 阅读全文
posted @ 2021-07-28 16:59 陌路y 阅读(4996) 评论(0) 推荐(1) 编辑