NodeJs-Express

简单的 demo

vue中的nextTick

在 Vue.js 中, nextTick方法用于在 DOM 更新之后执行回调函数。它的使用方式是调用 this.$nextTick(),并传入一个回调函数作为参数。回调函数将在 DOM 更新之后被执行,这样可以确保在修改数据之后立即操作 DOM。

前端文件流、切片下载和上传

一、前端文件流操作下面创建一个 fileUpload 的函数式组件,当用户选择文件时,通过FileReader将文件内容读取为 ArrayButter,然后将ArrayBuffer转换为十六进制字符串,并将结果显示在页面上。

性能优化

软链接和硬链接

假设我们有一个文件,称为 hello 通过 ln -s 创建一个软链接,通过 ln 可以创建一个硬链接。 12345678$ ln -s hello hello-soft$ ln hello hello-hard$ ls -lhtotal 76845...

indexedDB

一、概述随着浏览器的功能不断增强,越来越多的网站开始考虑,将大量数据储存在客户端,这样可以减少从服务器获取数据,直接从本地获取数据。 现有的浏览器数据储存方案,都不适合储存大量数据:Cookie 的大小不超过 4KB,且每次请求都会发送回服务器;LocalStorage 在 2.5MB 到 10MB 之间(各家浏览器不同),而且不提供搜索功能,不能建立自定义的索引。所以,需要一种新的解决方案,这就是 IndexedDB 诞生的背景。

防抖节流函数

防抖 debounce - 重新开始应用场景:搜索框输入文字后调用对应搜索接口、文本编辑器实时保存 利用闭包,不管触发频率多高,在停止触发 n 秒后才会执行,如果重复触发,会清空之前的定时器,重新计时,直到最后一次 n 秒后执行

性能优化

Babel插件,通过 AST 为元素添加 data-id 埋点

Babel 的工作流程是「解析(Parse)→转换(Transform)→生成(Generate)」,插件的核心是在「转换阶段」通过@babel/types(AST 节点工具)遍历 DOM 相关节点(如 JSXElement、Element),为其添...

前端工程化

兼容性

经常遇到的浏览器的兼容性有哪些? IE 浏览器不支持 Promisebabel-polyfill → webpack.config.js 的 entry 中设置 [‘babel-polyfill’, ‘./src/main.js’] 各浏览器之间默认样式的差异normalize.css与 reset 区别 → normalize.css 消除各浏览器之间默认样式的差异、保留有用的默认样式;而 reset 会清除所有的默认样式,过于暴力,例如会让 h 标题标签不再默认加粗,ul li 前面默认的小圆点也没了)

react和Vue中的key

在 React 或 Vue 项目中,在列表组件中为每个列表项指定一个唯一的 key 是很重要的,其作用主要有以下几点:

什么操作可以造成内存泄露

由于疏忽或者错误造成程序未能释放已经不再使用的内存,不再用到的内存却没有及时释放,从而造成内存上的浪费。

1345679