Java脚本中的一些方法,例如Map.prototype.values,返回一个迭代值.在不编写迭代这些值的函数的情况下,我可以按照Array.prototype.map将它们映射到其他值吗?有没有办法将可迭代数的值实现为一个数组对象,然后我可以调用的map方法?

或者我必须写一些像这样的东西

function realize(it) {
  let result = Array();
  for (i of it) {
    result.push(i);
  }
  return result;
}

每次我需要在js里做这件事?

推荐答案

如果目标专门是将您的值映射到其他值,则可以使用带有映射回调的Array.from().

Array.from(iterable, x => x * 2);

这就避免了必须构造中间数组,以及必须对值进行两次迭代.就空间和时间复杂度而言,Array.from()轻而易举地击败了spread syntaxArray.prototype.map()的组合.

Javascript相关问答推荐

如何将拖放功能添加到我已自定义为图像的文件输入HTML标签中?

在页面上滚动 timeshift 动垂直滚动条

Angular中计算信号和getter的区别

浮动Div的淡出模糊效果

您能在卸载程序(QtInsteller框架)上添加WizardPage吗?

未定义引用错误:未定义&Quot;而不是&Quot;ReferenceError:在初始化&Quot;之前无法访问';a';

使用js构造一个html<;ath&>元素并不能使其正确呈现

JavaScript不重定向配置的PATH

在不删除代码的情况下禁用Java弹出功能WordPress

在Odoo中如何以编程方式在POS中添加产品

将Auth0用户对象存储在nextjs类型脚本的Reaction上下文中

通过跳过某些元素的对象进行映射

JavaScript -复制到剪贴板在Windows计算机上无效

使用可配置项目创建网格

将Singleton实例设置为未定义后的Angular 变量引用持久性行为

Chart.js Hover线条在鼠标离开时不会消失

表单数据中未定义的数组键

如何在Reaction中设置缺省值, Select 下拉列表,动态追加剩余值?

JSON Web令牌(JWT)错误:RSA密钥对的签名无效

不允许在对象文本中注释掉的属性