Typescriptプリミティブ型:「number」型と「Number」型の違い(TSCでは大文字と小文字は区別されません)?
タイプのパラメータを書くつもりでしたnumberが、タイプのつづりを間違えて、Number代わりに書きました。 私のIDE(JetBrains WebStorm)では、型Numberはプリミティブ型に使用されるのと同じ色で書かれていnumberますが、クラスの名前(既知または不明)を書くと異なる色を使用するので、どういうわけか認識していると思います正しい/ほぼ正しい/正しい種類のタイプとしてのスペルミスのタイプ。 コードをコンパイルすると、たとえばコンパイラがという名前のクラスが見つからなかったと文句を言う代わりにNumber、TSCは次のエラーメッセージを書き込みます。 Illegal property access それはnumber、Number両方が異なるタイプとして共存することを意味しますか? これが本当の場合、それらのクラスの違いはどれですか? そうでない場合は、不明なクラスに対して表示されるのと同じエラーメッセージを単に書き込まなかったのはなぜですか(「名前「番号」は現在のスコープに存在しません」) これはコードです: class Test { private myArray:string[] = ["Jack", "Jill", "John", "Joe", "Jeff"]; // THIS WORKS public getValue(index:number):string { return this.myArray[index]; } // THIS DOESN'T WORK: ILLEGAL PROPERTY ACCESS public getAnotherValue(index:Number):string { return this.myArray[index]; } }