Mor*_*ney 2 javascript methods class ecmascript-6 es6-class
例如,我有一些类有一些方法:
class SomeClass() {
someMethod1() {
}
someMethod2() {
}
}
Run Code Online (Sandbox Code Playgroud)
我可以获取此类实例的所有函数名称吗?
Object.keys(new SomeClass())
Run Code Online (Sandbox Code Playgroud)
给了我一个空数组.
我想要像数组一样['someMethod1', 'someMethod2'].
你必须要求上课Object.getOwnPropertyNames()的prototype财产.
class Test {
methodA() {}
methodB() {}
}
console.log(Object.getOwnPropertyNames(Test.prototype))Run Code Online (Sandbox Code Playgroud)
请注意,这还包括构造函数,但如果您需要,可以轻松地将其排除:
class Test {
methodA() {}
methodB() {}
}
console.log(
Object.getOwnPropertyNames(Test.prototype)
.filter(x => x !== 'constructor')
)Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2189 次 |
| 最近记录: |