Node.js中关于accept时EMFILE的处理
EMFILE表示进程打开的文件描述符达到了上限,比如建立了一个TCP连接后,调用accept函数的时候就可能触发这个错误。那么这个会导致什么问题呢?首先我们看看Node.js是如何处理连接的。
【微前端】JS沙箱的基本实现
微前端中,为了保证应用之间js环境(主要是window全局变量)的独立,需要使用JS沙箱来对各应用的执行环境进行隔离。qiankun中使用了两种方案来实现这一隔离,分别是:
js 中你不知道的各种循环测速
for 循环是我们最常用的一种循环方式了,最大的好处就是结构清晰,能够随时 break 停止。while 循环和 do-while 循环这两个放在一起,也是他们的结构足够像,而且也能够随时 break 停止。
HarmonyOS(鸿蒙系统)体系
鸿蒙系统(HarmonyOS)是第一款基于微内核的全场景分布式OS,是华为自主研发的操作系统。华为会率先部署在智慧屏、车载终端、穿戴等智能终端上,未来会有越来越多的智能设备使用开源的鸿蒙OS。
JavaScript的垃圾回收机制
JavaScript是使用垃圾回收的语言,也就是很大的解决了跟踪内存对开发者造成的负担(毕竟这是很多问题的来源)。而卸下这个甜蜜的负担(一点也不甜蜜好嘛),通过自动内存管理实现内存分配和闲置资源回收。
优化 http 并发请求
现有 40 个异步请求需要发送,但由于某些原因,我们必须将同一时刻并发请求数量控制在 6 个以内,同时还要尽可能快速的拿到响应结果。应该怎么做?这个问题与一道经典面试题很类似:
数组扁平化的几种方式
ES6的flat方法:使用的是ES6的flat(),flat方法的参数可以是n也可以直接写死Infinity,n代表展开几层,例如上面的例子是最多是3维数组,需要展开3层,可以直接写3
TypeScript 声明文件全解析
声明文件的定义通俗地来讲,在 TypeScript 中以 .d.ts 为后缀的文件,我们称之为 TypeScript 声明文件。它的主要作用是描述 JavaScript 模块内所有导出接口的类型信息。
nrm和yrm ,npm源管理器,可以快速在源间进行切换
我们在开发时,有时需要进行npm源的切换。nrm和yrm作为npm / yarn的镜像源管理工具,可以快速地在 npm 源间切换,提高我们的效率。