首页 > 解决方案 > JavaScript Native Map 类被其他库覆盖

问题描述

我正在开发一个 JavaScript 库,新的 Map() 调用会在使用我的库的某些网站上导致以下 JavaScript 错误。

Map is not a constructor

当我在 Chrome 开发者控制台上执行 console.log(Map) 时,我得到以下结果。

MapClass {mapmain: GoomapMapMainControl, methods: Array(0), callbackParams: Array(0), Slider: null, UIMapTool: UIMapToolClass, …}

看起来旧版本的 GoogleMap 库覆盖了 JavaScript 的原生 Map 类,而我的库中的新 Map() 调用正在调用 Google Map 的 Map 类。

我无法更新我所有用户的谷歌地图库来解决这个问题,所以我需要修改我的库来解决这个问题。

即使被覆盖,是否可以调用 JavaScript Native Map 类?还是我需要通过复制原生 Map 的源代码来重新定义 Map 类?(它在某处可用吗?)

标签: javascriptglobal-variablesconflicting-libraries

解决方案


推荐阅读