memorandum

函数节流

在函数需要频繁触发时: 函数执行一次后,只有大于设定的执行周期后才会执行第二次
适合多次事件按时间做平均分配触发

场景:

  • 窗口调整(resize)
  • 页面滚动(scroll)
  • DOM 元素的拖拽功能实现(mousemove)
  • 抢购疯狂点击(click)

函数防抖(debounce)

在函数需要频繁触发时: 在规定时间内,只让最后一次生效,前面的不生效。
适合多次事件一次响应的情况

场景:

  • 输入框实时搜索联想(keyup/input)

cross-env 修改环境变量

在类中定义的函数默认开启了局部的严格模式

在类中直接写赋值语句如 a = 1,意为在类的实例对象上添加一个属性名为a 值为1

//#region //#endregion代码折叠

状态码304 缓存文件

@import "~antd"

前面加 ~ 表示你后面的值为alias, 然后就会去webpack alias配置中找相应的值, 然后拼接成最后的地址

data:image/jpeg;base64,

小写ctrl+u 驼峰小写ctrl+shift+u

纯函数

一类特别的函数:只要是同样的输入(实参),就必定得到相同的输出(返回)
必须遵守以下约束

  • 不得改写参数数据
  • 不会产生任何副作用,如网络请求,输入输出设备
  • 不能调用Date.now()或者Math.random()等不纯的方法

serve服务器

npm i -g serve
serve 路径

for..of 值

for..in 键

镜像源

npm 官方原始镜像网址是:https://registry.npmjs.org/
淘宝 NPM 镜像:https://registry.npm.taobao.org
阿里云 NPM 镜像:https://npm.aliyun.com
腾讯云 NPM 镜像:https://mirrors.cloud.tencent.com/npm/
华为云 NPM 镜像:https://mirrors.huaweicloud.com/repository/npm/
网易 NPM 镜像:https://mirrors.163.com/npm/
中科院大学开源镜像站:http://mirrors.ustc.edu.cn/
清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/

git提交注释

feat、feature: 新增 feature 新功能
fix: 修复 bug
docs: 仅仅修改了文档,比如 README, CHANGELOG, CONTRIBUTE等等
style: 仅仅修改了空格、格式缩进、逗号等等,不改变代码逻辑
refactor: 代码重构,没有加新功能或者修复 bug
perf: 优化相关,比如提升性能、体验
test: 测试用例,包括单元测试、集成测试等
chore: 改变构建流程、或者增加依赖库、工具等
revert: 回滚到上一个版本 撤销上一次的commit
add:新功能
update:更新
del:移除文件
build:构建工具或构建过程的变动,如:webpack升级、gulp替换为webpack等
workflow 工作流改进
ci 持续集成
types 类型定义文件更改
wip 开发中

<script type="module"> 需要配合始终开启的 CORS 进行加载。这意味着你的服务器必须返回诸如 Access-Control-Allow-Origin: * 的有效的 CORS 头

权限

sudo chmod -R 777 sd-gateway-fe

深度选择器

  1. >>> 可用于項目中的css原生样式,那么可以直接使用 >>>
  2. /deep/ 项目中使用预处理器,如sass less等 都可以用 /deep/
  3. ::v-deep 用于既有预处理器,还是vue项目用到ElemenUI时使用,目前我用到最多的就是这个

Reflect.ownKeys和Object.keys的区别

Reflect.ownKeys返回所有的属性不管是不是可枚举
Object.keys返回可枚举的属性

伪数组

拥有 length 属性,其它属性(索引)为非负整数(对象中的索引会被当做字符串来处理,这里你可以当做是个非负整数串来理解)
不具有数组所具有的方法
常见的伪数组有:

  • 函数内部的 arguments
  • DOM 对象列表(比如通过 document.getElementsByTags 得到的列表)
  • jQuery 对象(比如 $("div") )

vscode注释

macOS:Ctrl + Cmd + I
macOS:Ctrl + Cmd + T

深浅拷贝比较

浅拷贝(shallow copy):只复制指向某个对象的指针,而不复制对象本身,新旧对象共享一块内存。

Object.assgin({}, obj)
[].concat(arr)
[...arr]
arr.slice()

深拷贝(deep copy):复制并创建一个一模一样的对象,不共享内存,修改新对象,旧对象保持不变。

JSON.parse(JSON.stringify(obj))

浏览器请求拷贝到postman

Copy as cURL(bash) 或者 Copy as cURL

export * from './xxx' 会把 xxx 中所有的非default导出

使用addEventListener()方法绑定响应函数,取消默认行为时不能使用 return false

如果元素被指定的选择器字符串选择,Element.matches() 方法返回 true; 否则返回 false。

Object.create() 静态方法以一个现有对象作为原型,创建一个新对象

JSON.stringify 方法对于布尔值、数字使用会自动转换为对应的原始值,对 NaN 使用则返回字符串 null,对于函数则忽略返回 undefined

函数的柯里化:通过函数调用继续返回函数的方式,实现多次接收参数最后统一处理的函数编码形

posted @   提莫一米五呀  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示