2016-02-26 64 views
0

我正在进入Typescript,我似乎无法完全弄清楚类的结构。 即是如何使用字段变量。Typescript中的字段变量

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 
     } 
    } 

} 

numberArray1numberArray3说,它不能得到解决, numberarray4休息绝对一切,并告诉我,一个构造函数,方法,访问或属性的预期。

有谁能告诉我那是什么,我不明白? :)

回答

2

你的代码中有几个问题。

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

如果你想访问你的类方法实例字段你应该使用“这个”关键字:

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 
} 
+0

啊,似乎我不得不使用“这个”比我习惯的更多。 非常感谢!我希望它是私人的,它与“this”关键字一起工作。 – user3307017