JavaScript速查表

Node 24的值、函数、集合、错误、异步操作、模块、字符串与输入边界语法参考。

Node 24 打印为1页
下载 .md

值

const value = source 绑定不可重新赋值的块级名称
let value = source 绑定可以重新赋值的块级名称
value ?? fallback 仅当值为null或undefined时使用后备值
items.at(-1) 读取最后一项且不修改数组
Object.hasOwn(data, key) 明确检查对象自身是否有该属性

函数

const f = (x) => x + 1 从箭头函数返回一个表达式
function f(x) { return x + 1; } 声明具名函数
f(...values) 把可迭代对象展开为参数
f.call(owner, value) 用指定的接收者调用函数
f.bind(owner) 创建绑定了接收者的函数

集合

items.map(project) 逐项转换并生成新数组
items.filter(keep) 用匹配项生成新数组
items.find(match) 返回第一个匹配项,未找到则返回undefined
items.some(match) 检查是否有任意一项匹配
items.every(match) 检查是否所有项都匹配

对象

{ ...base, key: value } 浅拷贝对象并覆盖一个属性
Object.entries(data) 读取对象自身可枚举的字符串键条目
Object.fromEntries(rows) 从键值对构建对象
delete data.key 删除对象自身可配置的属性
structuredClone(data) 深拷贝受支持的结构化数据

错误

throw new Error(message) 显式抛出错误
try { work(); } catch (error) { handle(error); } 处理同步异常
promise.catch(handle) 处理被拒绝的Promise
finally { release(); } 无论结果如何都释放资源
error instanceof TypeError 检查错误是否属于已知类型

异步

await task 等待一个Promise敲定
await Promise.all(tasks) 收集全部结果,或在首次失败时拒绝
await Promise.allSettled(tasks) 收集每个兑现与拒绝结果
AbortSignal.timeout(ms) 创建超时后自动中止的信号
for await (const item of source) 依次消费异步可迭代对象

模块

export { value } 导出具名绑定
import { value } from './mod.js' 导入具名绑定
export default value 导出一个默认值
import('./mod.js') 动态加载模块并返回Promise
import.meta.url 读取当前模块的URL

字符串

`id: ${id}` 把值插入模板字面量
text.includes(part) 检查是否包含子字符串
text.replaceAll(a, b) 替换所有完全匹配的字符串
text.split(separator) 把文本拆分为数组
parts.join(separator) 把多个值连接为文本

输入边界

Number.parseInt(text, 10) 解析开头的十进制整数
Number.isFinite(value) 不进行类型强制转换,检查是否为有限数
encodeURIComponent(value) 编码一个URL组件
JSON.parse(text) 解析JSON文本
JSON.stringify(value) 序列化与JSON兼容的值

向你的AI准确表达

规则包 · JavaScript

供编码智能体使用的JavaScript规则

下载本方向的常见陷阱与审查项,文件格式可直接供编码智能体读取。