打字稿中的字段变量

Field variables in Typescript

本文关键字:字段 变量      更新时间:2023-09-26

我正在进入打字稿,我似乎无法确切地弄清楚类的结构。即如何使用字段变量。

class NumberClass {
    private numberArray1: number[] = [1,2,3,4,5,6,7,8,9,10];
    public numberArray2: number[] = [1,2,3,4,5,6,7,8,9,10];
    numberArray3: number[] = [1,2,3,4,5,6,7,8,9,10];
    var numberArray4: number[] = [1,2,3,4,5,6,7,8,9,10];

    validateNumber(): void{
        for (var i: number = 0; i < numberArray.length; i++) {
            //validate numbers
        }
    }
}

numberArray1 numberArray3说它无法解决, numberarray4绝对破坏了一切,并告诉我需要构造函数、方法、访问器或属性。

谁能告诉我我无法理解的是什么?:)

你的代码中有几个问题。

不能将松散变量声明为类定义的一部分。只允许私有/公共/受保护或不允许任何内容。没有访问修饰符与公共相同。因此,您的#1,2,3是有效的。但#4不是。

如果你想在你的类方法中访问实例字段,你应该使用'this'关键字:

 for (var i: number = 0; i < this.numberArray1.length; i++) {
         //validate numbers
 }

或者将此字段声明为静态:

private static numberArray1: number[] = [1,2,3,4,5,6,7,8,9,10];

并通过类名访问它:

for (var i: number = 0; i < NumberClass.numberArray1.length; i++) {
        //validate numbers
}