的性质给出这两个类如何遍历一个ES6/2015类实例
class Foo{
f1;
get f2(){
return "a";
}
}
class Bar extends Foo {
b1;
get b2(){
return "a";
}
}
let bar = new Bar();
什么代码会让我从bar
实例属性列表? ['f1', 'f2', 'b1', 'b2']
更新
这应该是@Marc C'S部分答案:
使用装饰我可以轻松地将非枚举属性为枚举属性:
class Bar extends Foo {
@enumerable()
get b2(){
return "a";
}
}
这里是装饰来源:
function enumerable() {
return function(target, key, descriptor) {
if (descriptor) {
descriptor.enumerable = true;
}
};
}
老实说,这似乎是http://stackoverflow.com/questions/31054910/get-functions-of-a-class的DUP。没有理由使这些属性可枚举。 – loganfsmyth
[tag:babel]:*“Python国际化库,强调基于Web的应用程序。关于JavaScript库的问题,请使用[babeljs]。”* –