【问题标题】:Evaluate an array inside an ES6 map to actually print elements on console评估 ES6 映射中的数组以在控制台上实际打印元素
【发布时间】:2020-08-26 15:45:01
【问题描述】:

说明

我有一张 ES6 地图。它有一个字符串键,其值是一个映射数组。

下面的最小可重现代码最好地描述了它 -

var rootMap = new Map()
rootMap.set('details', [])

var subMap = new Map()
subMap.set('items', ['foo', 'bar'])

// Append subMap to the array in rootMap
rootMap.get('details').push(subMap)

console.log(rootMap)

问题

运行 sn-p 后,我在终端中看到了这个 -

Map(1) { 'details' => [ Map(1) { 'items' => [Array] } ] }

我需要在控制台上显示数组值 foobar,而不是 [Array]

编辑:我当然可以通过访问索引来记录值,但这个问题实际上是想知道是否可以(字面上)用值 ['foo', 'bar'] 替换 [Array]

我尝试过的

在搜索现有问题时,我尝试了两件事但没有成功 -

  • 在数组上使用.fill()(我认为它会评估数组,但事实并非如此)
  • 我尝试使用JSON.stringify,但遗憾的是它还不支持 ES6 Maps。

我猜这与 JavaScript 在控制台中延迟加载值的风格有关。

我需要打印元素而不是控制台中的[Array]

【问题讨论】:

    标签: javascript console.log es6-map


    【解决方案1】:

    没有。这是不可能的,因为console 是不可配置的。

    【讨论】:

    • 欣赏答案,但我当然可以访问数组值!我认为这个问题需要对所问的内容进行修改。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-28
    • 1970-01-01
    • 2014-01-12
    • 2015-01-26
    • 2015-03-16
    • 1970-01-01
    相关资源
    最近更新 更多