栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

JavaScript ECMAScript文档中的SpreadElement是什么?它与MDN的Spread语法相同吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaScript ECMAScript文档中的SpreadElement是什么?它与MDN的Spread语法相同吗?

这是错误的,因为

...
它不是运算符(至少在ECMAscript规范使用术语“运算符”的意义上如此)。它不会 生成
可用于进一步计算的值。我宁愿将其与其他标点符号进行比较,例如
,
;
(它们也是相关的,但在不同上下文中具有不同的含义)。

术语“扩展运算符”可以指:

Spread元素

var arr = [a, b, ...c]
;: Spread元素将iterable(
c
)扩展为新数组。等同于[a,b].concat(c)。

剩余元素

[a, b, ...c] = arr;
†:在解构内部,
...
构造具有相反的效果:它将剩余元素收集到数组中。这里的示例等效于

a = arr[0];b = arr[1];c = arr.slice(2);

(请注意,这只是一个近似值,因为解构作用于任何可迭代的值,而不仅仅是数组)

fun(a, b, …c):这个结构实际上在规范中没有名字。但是它的工作原理与传播元素非常相似:它将可迭代项扩展到参数列表中。
等同于

func.apply(null, [a, b].concat(c))

缺少正式名称可能是人们开始使用“扩展运算符”的原因。我可能会称其为“扩展参数”。

Rest参数

function foo(a, b, ...c)
与rest元素类似,rest参数收集传递给函数的其余参数,并将其作为in中的数组使用c。ES2015规范实际上使用该术语
BindingRestElement
来指代此构造。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/404995.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号