NodeJS多进程 NodeJS 是单线程,这是因为它的语言也就是 JavaScript 决定的,服务端的 http 请求数量是非常大的,可能几万几十万次,在处理 http 请求的时候一个错误就会导致整个进程的退出,这是灾难级的,所以需要多进程来避免这种情况的发生。
NodeJS事件循环 在 Node 应用程序启动后,并不会立即进入事件循环,而是先执行输入代码,从上而下开始执行,同步 API 立即执行,异步 API 交给 C++ 维护的线程执行,异步 API 的回调函数被注册到对应的事件队列中,当所有输入代码执行完成后,开始进入事件循环。浏览器中的事件循环机制相比你已经了解了(如果没有,可以参考彻底搞懂JavaScript单线程异步执行机制),那么 NodeJS 中的事件循环机制又是怎样的呢?它和浏览器的事件循环机制有何不同?
ASCII Unicode UTF-8 字符集 字符编码 在编码过程中我们经常会使用字符,而使用字符的前提就是把字符放入内存中,而放入内存中的仅仅是字符的编号,而不是真正的字符实体。值,至于以什么样的二进制值存储和计算机中进行传输是通过编码方式来的) ,根据上表可以得出,存储这个字需要三个字节(两个字节的编码方式,除去首位固定的。是一个很大的字符集,它只规定了这个字符集中每个字符对应的码值是多少,具体的编码规则是由 UTF 系列的编码规则实现的。),就是多个字符的集合。不同的字符集包含的字符数量是不一样的,包含的字符也不一样,对应的编码方式也不同。
JS中垃圾数据是如何自动回收的 V8的垃圾回收机制针对栈空间的变量和堆空间的变量机制有所不同。栈空间的原始类型数据在销毁执行上下文时就会被回收。堆空间的垃圾回收机制会将堆分为新生代和老生代,对应的垃圾回收器分别为副垃圾回收器和主垃圾回收器,副垃圾回收器采用 Scavenge 算法,主垃圾回收器采用标记-清除的方式
比Flex更强大的Grid网格布局 相信写过前端对齐布局的前端都知道 Flex 布局,它是一种轴线布局,指定“项目”针对轴线的位置,针对行对齐、列对齐(居中对齐、两端对齐)这些布局场景使用 Flex 布局是一种非常常见且高效的方法。Grid 布局则是将容器分成“行”和“列”,产生单元格,然后指定“项目”所占的单元格,远比 Flex 布局更强大。