Q1选择题难度 2
1/12
Node.js · 中级 03
记忆强度
在 npm 使用默认 caret 语义解析版本范围时,以下代码最终允许安装的最高版本范围是哪一项?
某项目的 package.json 包含:
{
"dependencies": {
"lib-a": "^0.2.3"
}
}
假设不考虑 package-lock.json,并且仓库中存在 0.2.4、0.2.9、0.3.0 和 1.0.0。
Node.js中级题库第 3 组,共 12 张卡片。
Node.js · 中级 03
某项目的 package.json 包含:
{
"dependencies": {
"lib-a": "^0.2.3"
}
}
假设不考虑 package-lock.json,并且仓库中存在 0.2.4、0.2.9、0.3.0 和 1.0.0。
- A(错误):A 错在把 caret 范围理解成了精确版本。
Koa 的洋葱模型依赖中间件组合函数递归派发,并由 next() 返回代表下游执行过程的 Promise。
- A(错误):A 不正确。
- A(错误):A 错在假设 Node 会把新旧两个导出对象自动合并。
- A(错误):A 错在把异步 API 当成同步读取,也错把文件 I/O 回调归入 timers 阶段。
webSocket 与传统的 http 有什么优势
请简述一下 node 的多进程架构
npm 安装不是简单地逐项复制直接依赖。
调用异步文件 API 时,JavaScript 发起请求并返回,耗时工作由 Node 原生层和 libuv 管理,文件系统操作通常可能借助线程池完成。
- A(错误):A 错在忽略第二个中间件主动抛出的异常。
libuv 的事件循环具有 timers、pending callbacks、idle/prepare、poll、check 和 close callb…
基于 HTTP/1.1 的 WebSocket 握手由客户端发起升级请求,通过 Upgrade、Connection、Sec-WebSocket-Key…