在 JavaScript 中重复使用 class 个名字

Reusing class names in JavaScript

是否有可能以某种方式重用在找到的全局对象列表 here 中定义的 class 名称? (如数字、字符串)

假设我想拥有自己的字符串 class。我可以定义它,并像这样使用它:

String.js

export default class String {
}

App.js

import String from './String'

let string = new String();

这确实有效,但是

所以是的,有没有办法封装我的 class,这样它就不会与全局字符串 class 混淆?

import './String'

函数和 class 定义是模块本地的。您正在导入文件,但没有使用其中的任何内容。

这就是为什么:

let string = new String();

将使用全局字符串——模块范围内没有 String 定义。

确保为所需的导入命名:

import String from './String'

顺便说一下,这是为什么最好为您的字符串 class 指定一个唯一名称的多个原因之一,例如 PhysicsStringStringMaterialThread。这样,如果您忘记将其导入某处,就不会意外地使用全局定义。