javascript - Javascript Map vs 元组数组
问题描述
我只是想了解javascript ES6 Maps(即let m = new Map())的查找时间为0(1)。我对 ES6 Maps 的理解是它的数据结构是基于元组数组的。您甚至可以在 Maps 的构造函数中使用元组数组。基本上,我的问题是:
怎么
let t = [[1,'hi'], [2,'bye']]
不同于
let m = new Map([[1,'hi'], [2,'bye']])
第一种情况显然会阻止持续查找。ES6 Map 如何实现常量查找?它们的底层数据结构是什么?
解决方案
一个合理的假设可能是使用 Hash-Map 数据结构进行 O(1) 查找。
也可能 Map 元组中的第一个元素可以使用键值对中的 Object 映射到数组的索引。因此,当调用特定键时,它可能会引用该对象。
推荐阅读
- oracle - 在 oracle 中允许来自 SSRS 的多个值
- java - 如何实现除 id 字段以外的自增字段?
- php - 为什么在使用 HTTP Accept-Ranges 提供大文件时不满足 PHP 的“memory_limit”和“max_execution_time”限制?
- wordpress - Wordpress Gutenberg e2e 测试 - http://localhost:8889 上的 net::ERR_CONNECTION_REFUSED
- python - matplotllib 图形大小和 xelatex 之间的长度比例不匹配
- javascript - 如何使用 Firebase Auth 用户 ID 将信息添加到另一个数据库?
- javascript - 输入字段为空时隐藏 DIV
- jdbc - Kafka连接数据库源连接器:如何从外键复制数据
- pandas - 如何使用熊猫变换函数将每一行与另一列分组的最大值分开
- kotlin - Kotlin 扩展方法覆盖