- 博客(9)
- 收藏
- 关注
原创 面试题 如何开发通用模块以便ES Module和CommonJS两者都能使用
主要的思想是发现运行环境,然后导出相应的模块。我们可以首先创建一个函数,该函数的输出取决于它是否在ESM环境中运行。我们使用typeof运算符来测试imports和exports变量。然后根据结果定义我们的模块。其实这段代码看着挺熟悉的 经常会在一些库看到原来是这个作用。
2024-05-14 11:27:03
137
原创 JS-数据结构
一组连续存储的数据元素,可以通过索引访问。数组的插入、删除操作较为低效,但查找操作具有较高的性能。:由一系列节点组成的数据结构,每个节点包含一个数据元素和一个指向下一个节点的指针。链表支持快速的插入和删除操作,但查找操作需要遍历链表。:一种后进先出(LIFO)的数据结构,只允许在栈顶进行插入和删除操作。常用于表达式求值、括号匹配等场景。:一种先进先出(FIFO)的数据结构,允许在队尾插入元素,在队头删除元素。常用于任务调度、广度优先搜索等场景。
2024-05-14 11:16:40
1200
原创 Electron + react 实现录音分段播放
到这里基本就可以放 网上搜的 可以直接用 sourceNode 再 链接 设备 可以直接放 但是api 配合样式比较复杂 想着是否可以 直接把这个资源给audio 标签帮我播放 我直接用 audio 标签的api。需求:整体需求 做一个录音组件,可以录音,可以播放完整录音(我的活),可以针对某个问题进行标记(我的活),可以播放标记录音(我的活)两种方案 1.使用webaudio API 合并 一个音频 2.通过数据seek 到一个播放器的多个不同位置播放。4.AudioBuffer 转 Blob。
2024-05-14 10:27:21
305
原创 前端模块化
由于代码之间会发生大量交互,如果结构不合理,这些代码就会变得难以维护、难以测试、难以调试。而使用模块化就解决了这些问题,模块化的特点当应用被组织成模块时,可以方便的在其他地方重用这些模块,避免编写重复代码,从而加快开发流程;当应用变得越来越复杂时,如果在一个文件中编写所有功能,代码会变得难以阅读。如果使用模块设计应用,每个功能都分布在各自的模块中,代码就会更加清晰、易读;软件的美妙之处在于进化,从长远来看,我们需要不断为应用增加新的功能。当应用被结构化为模块时,可以轻松添加或删除功能。
2023-05-29 09:20:01
1867
原创 mac 使用zsh vscode和终端node默认版本不一致
平时工作中有不少项目需要维护,每个项目 所使用的node版本不一致 所以使用nvm来管理node版本最近 所有项目都升级了,基本上都使用最新的node版本,安装依赖的话每次切换 可能忘了切换产生一些不必要的问题,所以想着切换nvm默认配置使用 nvm alias default 16.14.2 切换默认版本但是 这时候 vscode终端默认版本没改变 百度了好久最后发现必须鼠标右键关闭整个终端 才会生效默认配置...
2022-06-17 16:40:36
1041
2
原创 react-native 项目增加eslint
ESLint 是一个语法规则和代码风格的检查工具,可以用来保证写出语法正确、风格统一的代码。不管是多人合作还是个人项目,代码规范是很重要的。这样做不仅可以很大程度地避免基本语法错误,也保证了代码的可读性。这所谓工欲善其事,必先利其器,每次保存,vscode就能标红不符合ESLint规则的地方,同时还会做一些简单的自我修正。 安装配置Add to your eslint config (, or field in ):保存之后 提示 Failed to load parser '@
2022-06-17 10:59:40
535
原创 react-native 使用别名
创建 .babelrc文件安装 metro-react-native-babel-preset 依赖 安装此依赖支持配置 自定义babel安装 别名插件 babel-plugins-module-resolver 做如下配置
2022-06-15 10:33:12
397
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人