摘要: 环境搭建 因为装饰器属于一个在提案中的语法,所以不管是node还是浏览器,现在都没有直接支持这个语法,我们要想使用该语法,就必须要通过babel将它进行一个编译转换,所以我们需要搭建一个babel编译环境。 1、安装babel相关包 npm i @babel/cli @babel/core @bab 阅读全文
posted @ 2021-06-26 12:28 陌路y 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 写在前面 函数防抖和函数节流都是对函数进行特殊的设置,减少该函数在某一时间段内频繁触发带来的副作用。二者只是采用的设置方式和原理不一样,其最终的目的是一样的。 函数防抖和函数节流都是定义一个函数,该函数接收一个函数作为参数,并返回一个添加了防抖或节流功能后的函数。 因此可以将函数防抖和函数节流看作是 阅读全文
posted @ 2021-06-26 12:26 陌路y 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 一、Broadcast Channel API 简介 Broadcast Channel API 可以实现同源下浏览器不同窗口、Tab 页或者 iframe 下的浏览器上下文之间的简单通讯。通过创建一个监听某个频道下的 BroadcastChannel 对象,你可以接收发送给该频道的所有消息。 了解 阅读全文
posted @ 2021-06-26 12:25 陌路y 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 1.什么是伪数组 JavaScript中存在有一种类数组,或者说伪数组。经常见到的伪数组有函数的arguments对象、dom.querySelectorAll等获取的NodeList类(NodeList本身具有forEach方法)等。 伪数组并不是数组,它没有继承Array.prototype,但 阅读全文
posted @ 2021-06-26 11:05 陌路y 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 一、ZIP 格式简介 ZIP 文件格式是一种数据压缩和文档储存的文件格式,原名 Deflate,发明者为菲尔·卡茨(Phil Katz),他于 1989 年 1 月公布了该格式的资料。ZIP 通常使用后缀名 “.zip”,它的 MIME 格式为 “application/zip”。目前,ZIP 格式 阅读全文
posted @ 2021-06-26 11:04 陌路y 阅读(1342) 评论(0) 推荐(0) 编辑
摘要: 今天分享的内容是基于GPU.js来提升性能。 正文 用 GPU.js 使你的应用程序快 10 倍。 作为开发者,我们总是寻找机会来提高应用程序的性能。当涉及到网络应用时,我们主要在代码中进行这些改进。 但是,你有没有想过将 GPU 的力量结合到你的网络应用中来提高性能? 本文将向你介绍一个名为 GP 阅读全文
posted @ 2021-06-26 11:03 陌路y 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 为什么WebGL会比较厉害 我们来看看javascript API绘制和webGL绘制原理上的不同之处: 如果使用javascript对画布的逐个像素进行处理,那这部分处理工作就需要在javascript的运行环境里进行,我们知道javascript的执行是单线程的,所以只能逐个逐个像素进行计算和绘 阅读全文
posted @ 2021-06-26 11:01 陌路y 阅读(269) 评论(0) 推荐(0) 编辑
摘要: ES6 的 Class 是如何实现的 先从最简单的一个 Parent 类看起: class Parent{ constructor(){ this.a = 1 this.getA = function(){} } } 转译之后的结果是: function _classCallCheck(instan 阅读全文
posted @ 2021-06-26 09:56 陌路y 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 分析Promise Promise对象用于表示一个异步操作的最终完成 (或失败)及其结果值,常用来实现异步操作。 Promise状态 Promise有三种状态: pending 初始状态fulfilled 执行成功后的状态rejected 执行失败后的状态 Promise状态只能由pending改变 阅读全文
posted @ 2021-06-26 09:54 陌路y 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 加载js || css || style const loadRes = function(name, type, fn) { // 加载js || css || style let ref if (type 'js') { // 外部js ref = document.createElement( 阅读全文
posted @ 2021-06-26 09:50 陌路y 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 大前端领域的Middleware 这里说的大前端领域自然就包括了服务器端和客户端了。最早提出 Middleware 概念的是Express, 随后由原班人马打造的Koa不但沿用了 Middleware 的架构设计,还更加彻底的把自己定义为中间件框架。 Expressive HTTP middlewa 阅读全文
posted @ 2021-06-26 09:48 陌路y 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 前言 早期的 Web 应用中,与后台进行交互时,需要进行 form 表单的提交,然后在页面刷新后给用户反馈结果。在页面刷新过程中,后台会重新返回一段 html 代码,这段 html 中的大部分内容与之前页面基本相同,这势必造成了流量的浪费,而且一来一回也延长了页面的响应时间,总是会让人觉得 Web 阅读全文
posted @ 2021-06-26 09:46 陌路y 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 常规方案 使用 FileReader 以utf-8格式读取文件,根据文件内容是否包含乱码字符 � ,来判断文件是否为utf-8。 如果存在 �,即文件编码非utf-8,反之为utf-8。 代码如下: const isUtf8 = async (file: File) => { return awai 阅读全文
posted @ 2021-06-26 09:45 陌路y 阅读(889) 评论(0) 推荐(0) 编辑
摘要: 1.html标签内联事件 实例1:单击页面 "Hello" 按钮,弹出提示框显示 Hello world! <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <button 阅读全文
posted @ 2021-06-26 09:42 陌路y 阅读(398) 评论(0) 推荐(0) 编辑