
整理技术笔记时,一句话写得太简略,读者就可能按另一个意思理解。比如“排序会返回数组”,返回的是新数组,还是原来那个?“请求出错会被捕获”,这里的出错又包含哪些情况?
这次我挑了三个 JavaScript 问题,让 Codex 调用 Moli 读取 MDN 文档,再用小例子检查实际行为,最后整理成一份能直接用于修改笔记的核对表。
我最近在 Lexmount 团队整理 Moli 的实际用法。这一轮选的是资料查证:三个问题是为这次练习准备的,网页读取和代码运行由 Codex 执行,下面记的是这次具体查到、跑到的结果。
先把一句话,拆成可以检查的问题
我给 Codex 列了三个待确认的说法:sort() 会不会生成新数组,HTTP 404 会不会让 fetch() 自动失败,以及 Promise.all() 失败后会不会停掉其他任务。
它们都适合用一个很小的例子观察结果。查资料时,也能直接去对应 API 的文档,不需要先读完一整套教程。
这次用本机 Moli 1.1.19 读取了三页 MDN。Moli 是面向 AI Agent 的开源浏览器内核,可以加载网页,把内容输出为 Markdown,供 Agent 继续处理。本轮由它取回正文,Codex 再寻找与问题直接相关的说明,保留出处并准备验证代码。
我把输出定成四项:待确认的问题、文档依据、运行结果、建议怎么写。这样查完以后,就能回到笔记里改具体的句子。
“返回了数组”,还要说明是不是原来的
第一条查的是 Array.prototype.sort()。MDN 说明它会原地排序,并返回同一个数组的引用。
Codex 在本机 Node.js 里跑了一个例子:
const values = [3, 1, 2];
const result = values.sort((a, b) => a - b);
console.log(values); // [1, 2, 3]
console.log(result === values); // true
看到 true,这条笔记就有了可以直接写进去的结论:sort() 会修改原数组,返回值仍然指向它。 如果后面的步骤还要用原顺序,就需要另作安排。
这个例子里显式传了数字比较函数。它检查的是数组有没有被修改,没有顺带把默认排序规则也概括成“数字从小到大”。
HTTP 404,要自己检查响应状态
第二条是 fetch()。MDN 提醒,收到 404 这类 HTTP 错误状态,并不会仅因此让返回的 Promise 拒绝;代码需要检查 Response.ok 或 Response.status。
为了把结果看清楚,Codex 在本机启动了一个专门返回 404 的测试地址,然后发起请求。实际记录是:
status: 404
ok: false
catchEntered: false
也就是说,这个例子拿到了响应,接下来还需要代码判断它是否符合预期。可以把笔记补成:fetch() 收到 404 后仍可返回 Response;如果希望按异常处理,应检查状态并主动抛出错误。
const response = await fetch(url);
if (!response.ok) {
throw new Error(`HTTP ${
response.status}`);
}
这里验证的是本地测试服务的 HTTP 响应。网络错误、主动取消等情况需要分别看,不能据此写成“fetch() 永远不会失败”。
整体失败了,其他任务不一定停下
第三条查的是 Promise.all()。文档说明,其中一个输入 Promise 拒绝后,组合结果会拒绝,但这不会自动取消剩余操作。
Codex 准备了两个已经启动的异步任务:A 先失败,B 稍后完成。日志按这个顺序出现:
A: rejected
Promise.all: rejected
B: completed
这就把“失败”和“取消”分开了。笔记应写成:Promise.all() 会因某项失败而拒绝;其他已启动的操作不会被它自动取消。 如果任务本身需要取消,还要使用对应的取消机制。
这个细节也容易带到批量网页任务里:收到一个失败结果后,不能直接假定其他请求已经停止。

文档由 Moli 读取;示例由 Codex 在 Node.js v24.22.0 中执行。
查完之后,留下能改稿的记录
这次三个问题都留下了来源链接、运行结果和修改建议,核对表另存为 Markdown 与 CSV。以后改同类文章,可以先找出那些省略了条件的句子,再逐条回到资料里确认。
任务描述可以写得很具体:
用 Moli 读取这些说法对应的文档,找出直接支持或限定它的段落,保留来源链接。适合运行的例子就做一次本地验证,分别记录文档结论和运行结果,最后给出能放进正文的改写建议。
在这套流程里,Moli 把当前网页内容交给 Codex,后面的判断和验证仍要逐项完成。本轮覆盖的是三个小例子,没有做跨浏览器兼容性测试。对写笔记来说,这样已经能把几句笼统描述改得更准确,也让之后的读者有地方回查。