【问题标题】:es6 Map get value by index [duplicate]es6 Map按索引获取值[重复]
【发布时间】:2019-06-28 18:27:31
【问题描述】:

有没有办法在不迭代或将映射对导出到数组的情况下获取每个索引的映射对值?

let mymap = new Map();
mymap.set('foo', 'moo');
mymap.set('voo', 'loo');
// mymap by 0,1.... index get 'moo','loo' values

【问题讨论】:

  • 喜欢,mymap[0] ?
  • @SeanMC 是的,差不多
  • 没有。地图不是索引数据结构。
  • 那种破坏地图的目的对吧?键/值对旨在让用户通过键进行访问。你确定你没有使用错误的数据结构吗?也许对象字面量数组更适合您的用例。
  • @RandyCasburn 确实,但由于它的有序和 js 不是那么强的类型 lang 我希望可能会有一个小技巧

标签: javascript ecmascript-6


【解决方案1】:

不,无法通过索引访问 JavaScript 地图。

您说“不将映射对导出到数组”,所以我想知道您是否担心在不强制执行的情况下使映射可索引。如果是这样,您可以使用:

Array.from(mymap)[0] // ["foo", "moo"]

【讨论】:

  • 如果 Array.from 不在地图迭代中将对放入数组中,您认为会怎样?
  • 不是真的,因为我必须转换为数组,如果可能的话我想避免这种情况。 10 倍的反对票不是我的
  • 我知道它会迭代地图,但从他使用的语言来看,我认为蝙蝠侠可能只是关心以命令式的方式执行它。不用担心投反对票 :) Stack Overflow 是混乱中立的,我的回答是不正确的。
猜你喜欢
  • 2012-12-08
  • 2016-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-06
  • 2018-11-23
相关资源
最近更新 更多