首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在JavaScript中重用类名

在JavaScript中重用类名
EN

Stack Overflow用户
提问于 2017-10-01 09:51:20
回答 1查看 167关注 0票数 0

是否有可能重用在查找到的全局对象列表这里中定义的类名?(如数字、字符串)

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

String.js

代码语言:javascript
复制
export default class String {
}

App.js

代码语言:javascript
复制
import String from './String'

let string = new String();

这实际上是可行的,但是

  • PHPStorm告诉我:是的,您使用了一个原始对象包装器(认为它是全局对象字符串)。
  • 然后ESLint告诉我:不允许原始包装器实例(没有新包装器)
  • 最后,SonarQube告诉我:将包装对象用于原始类型是不必要的、令人困惑和危险的。应该使用简单的文字代替。

那么,是的,是否有一种方法来封装我的类,这样它就不会与全局字符串类混淆?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-01 09:58:35

代码语言:javascript
复制
import './String'

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

这就是为什么:

代码语言:javascript
复制
let string = new String();

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

确保将需要的导入命名为:

代码语言:javascript
复制
import String from './String'

顺便说一句,这也是为什么最好给String类一个惟一的名称(比如PhysicsStringStringMaterialThread )的原因之一。这样,如果您忘记在某个地方导入它,就不会意外地使用全局定义。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46511195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档