class Field1 {
data = 0;
constructor(init) {
this.data = init;
}
}
class Field2 {
data = 0;
constructor(init) {
this.data = init;
}
}
class Field3 {
data = 0;
constructor(init) {
this.data = init;
}
}
class Test {
field1 = new Field1(1);
field2 = new Field2(2);
field3 = new Field3(3);
constructor() {
this.compose2(this.func1, this.func2, this.func3);
}
func1() {
console.log("init func1");
console.log(this.field1.data);
}
func2() {
console.log("init func2");
console.log(this.field2.data);
}
func3() {
console.log("init func3");
console.log(this.field3.data);
}
compose2(...args) {
console.log(args);
args.reduce(
(prevFunc, nextFunc) => {
nextFunc();
},
(init) => init
);
}
}
new Test();
在func1、func2、func3函数内部,名为field1、field2、field3的类字段是不可访问的。 我收到错误消息“无法读取未定义的属性(读取‘field1’)”。我认为这是因为 Class 语法。因为它可以在不上课的情况下找到。