前端与 HTML | 青训营笔记
这是我参与「第五届青训营」伴学笔记创作活动的第 7 天node.js
1.应用场景
1.前端工程化:nodejs催生了前端的一些工具
bundle uglify transplie 其他语言
2.web服务端的应用:vercel
曲线 效率 社区 工具
3.electron跨端桌面应用
商业应用 内部的效率工具
4.在字节中的应用,bff应用,服务端应用 electron应用
使用的生态健康
2.运行结构
有什么组成 npm+用户代码 nodejs core+NAPI V8 http2 zlib llhttp ssl... 运行特点:
1.异步 :不需要等待,占用更少的内存
2.单线程:
优点:不用考虑多线程状态同步问题,也就不需要锁;同时还能比较高效地利用系统资源; 缺点:阻塞会产生更多负面影响 解决办法:多进程或多线程 基本上就是效率问题
3.跨平台
3.http server
编写静态文件 react ssr 服务端渲染,效率更高。 部署:进程的状态 稳定的运行
4.其他内容:
npm:包管理工具
REPL 命令 ctrl + c - 退出当前终端。 ctrl + c 按下两次 - 退出 Node REPL。 ctrl + d - 退出 Node REPL. 向上/向下 键 - 查看输入的历史命令 tab 键 - 列出当前命令 .help - 列出使用命令 .break - 退出多行表达式 .clear - 退出多行表达式 .save filename - 保存当前的 Node REPL 会话到指定文件 .load filename - 载入当前 Node REPL 会话的文件内容。
回调函数:
Node.js 异步编程的直接体现就是回调。 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数。 例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能,可以处理大量的并发请求。