
【计】 escape character
enlarge; expand; extend; ream; spread
【计】 extend; spread-out
【化】 expansion
【医】 extend
accord with; symbol
在汉英词典与技术语境中,"扩展符"(Spread Operator)是JavaScript编程语言的核心语法符号,其功能为解构可迭代对象并展开元素。根据ECMA-262国际标准第14.3.5章节定义,该符号由三个连续英文句点(...)构成,正式名称为SpreadElement语法结构。
该操作符具备双重功能特性:
Math.max(...
等效于Math.max(1,3,2)
newObj = {...oldObj}
实现浅拷贝MDN Web Docs技术文档明确指出,扩展符自ES6(ECMAScript 2015)规范引入,支持包括Array、String、Map、Set在内的所有可迭代对象展开操作。在TypeScript 4.2版本更新中,其应用范围已扩展至元组类型解构。
实际开发场景中需注意:当展开undefined或null值时,ES2020前版本会抛出TypeError异常,新版规范已修正该限制。此语法特性现已被主流浏览器(Chrome 46+、Firefox 36+)完全支持,成为现代Web开发的标准配置。
扩展运算符(...
)是JavaScript中ES6引入的语法特性,主要用于展开可迭代对象(如数组、对象、字符串等)的元素或属性。以下是其核心要点:
语法形式
使用三个连续点(...
)表示,可将数组、对象等拆分为单个元素或属性。
console.log(...[1, 2, 3])
→ 输出 1 2 3
。let newObj = { ...oldObj }
→ 复制对象属性。核心用途
数组操作
const merged = [...arr1, ...arr2]
。apply
方法,如Math.max(...array)
。const copy = [...original]
。对象操作
const mergedObj = { ...obj1, ...obj2 }
(相同属性后者覆盖前者)。const clone = { ...source }
。其他用途
[...'hello']
→ ['h', 'e', 'l', 'l', 'o']
。[...document.querySelectorAll('div')]
。const arr = [{ a: 1 }];
const copy = [...arr];
arr.a = 2;
console.log(copy.a); // 输出 2(浅拷贝)
Object.assign()
,但语法更简洁。如果需要更完整的示例或场景,可参考上述来源网页的详细说明。
艾榴醇彩色摄影机茶壶超值船舶费用保险传递器醋蜜剂存货审计当型循环德木瓦弗氏公式风疹性胚胎畸形符号操作数高阶语言高韧性计算机辅助程序设计咀嚼试验空虚层电容量裂断试验裂殖菌律草烯吕托氏体棉籽饼平顶圆头勤勉的期日权标卡片噻┭烷四日热随机应变椭圆形切断术