2023年5月之前的blog存档

盒子模型

box-sizing 通过box-sizing这个属性来设置元素的盒模型 box-sizing:content-box 为标准盒模型(默认) box-sizing:b

本地存储

总结 特性 cookie localStorage sessionStorage indexDB 数据生命周期 一般由服务器生成,可以设置过期时间 除非被清理,否则一直存在 页面关闭就清理 除非被清理,否则一直存在 数据存储大小 4K 5M

面试题

2022年前端工程师面试题.pdf https://github.com/wxlvip/Interviewer TypeScript TS「面试题及答案」不断更新 2019年17道高频React面试题及详解 (建议收藏)原生JS灵魂之问, 请

各种Worker

web worker JS是单线程没有多线程,当JS在页面中运行长耗时同步任务的时候就会导致页面假死。为了解决这个问题,HTML5提供了新的APIweb wor

前端跨页面通信总结

详解看面试官:前端跨页面通信,你知道哪些方法?,这里只做总结。 在浏览器中,每个Tab页可以粗略理解为一个“独立”的运行环境,即使是全局对象也

webpack配置

安装两个模块 npm i -D typescript ts-loader 添加ts的配置文件tsconfig.json,配置参考。 webpack设置文件后缀补全。 在ts文件中引入其他ts文件会

泛型

类型变量,用于传递类型。 写法 function identity<Type>(arg: Type): Type { return arg; } // 箭头函数的泛型必须有extends,否则语法无法识别。 const identity =<T extends {}>(arg: T): T => { return arg; }; 泛型约束 interface Length{ length:number }

搞懂各种依赖

dependencies 运行时依赖,生产环境需要的依赖,会被打包的依赖。 devDependencies 开发时依赖,开发环境需要安装的依赖,不会被打包。 peerDependencies 宿主依赖,指定了当前模块在使用前需要安

monorepo总结

基本概念 monorepo是一种项目管理方式, 就是将多个项目放在一个仓库里。相反的是MultiRepo模式,即每个项目对应一个单独的仓库。 MultiRepo 缺

Pnpm关于monorepo相关命令

安装全局依赖 pnpm i lodash -w #安装lodash到根目录 # -w(--workspace-root) 要安装到根目录 # -D 安装公共开发环境依赖 安装局部依赖 pnpm add axios --filter @monorepo/http # 安装axios依赖到@mon

闭包

概念 函数中的函数,闭包是指引用了外部函数作用域变量的函数, 可以粗暴的理解为:相当于将外部变量保留下来,就是一个独立的作用域,外部不可见,作为

跨域

同源策略 所谓同源,指协议、域名、端口号相同。 浏览器处于安全考虑,只允许本域名下的接口交互,不同域名下的请求,就会出现跨域。 为什么限制跨域访问

解析器

总结 一个解析器分为四步: 词法分析,将 SQL 字符串拆分成包含关键词识别的字符段(Tokens)。 语法分析,利用自顶向下或自底向上的算法,将 Tokens 解析为

多进程的浏览器

一个浏览器是多进程,1 个浏览器(Browser)主进程、1 个 GPU 进程、1 个网络(NetWork Service)进程、多个渲染进程和多个插件进程

Flex 弹性布局

概念 采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目

柯里化

概念 判断当前传入函数的参数个数 (args.length) 是否大于等于原函数所需参数个数 (fn.length) ,如果是,则执行当前函数;如果是小于,则返回一个函数。 例如:实现add(1)