Arrays 为什么数字具有索引属性?

Arrays 为什么数字具有索引属性?,arrays,typescript,Arrays,Typescript,我想我还是不懂打字稿 我可以申报 let x: number = 9; 然后访问 let y: number = x[6]; // 6 is an example. Any index really... 我来自C#背景,这在我看来是错的。为什么我可以访问一个变量上的数组位置,而这个变量本来就不是数组? 当然,对于C#,字符串是字符数组。因此,如果使用C#中的字符串执行上述操作,将得到第7个字符。但是用打字机?在电话号码上 我知道对于JavaScript,这是由于非常自由的键入,但我希望Ty

我想我还是不懂打字稿

我可以申报

let x: number = 9;
然后访问

let y: number = x[6]; // 6 is an example. Any index really...
我来自C#背景,这在我看来是错的。为什么我可以访问一个变量上的数组位置,而这个变量本来就不是数组? 当然,对于C#,字符串是字符数组。因此,如果使用C#中的字符串执行上述操作,将得到第7个字符。但是用打字机?在电话号码上


我知道对于JavaScript,这是由于非常自由的键入,但我希望TypeScript Transpiler会否认这一点。。。事实并非如此。这有什么好的理由,或者说是一个方便的用法吗?

您应该启用noImplicitAny编译器选项,您会得到一个错误,
[]
不仅仅是用于数组索引。它还用于属性访问
x[6]
x
上检索名为
“6”
的属性,并且TypeScript不限制在非数组上使用带括号的属性访问。您应该启用noImplicitAny编译器选项,您将得到一个错误
[]
不仅仅是用于数组索引。它还用于属性访问
x[6]
x
上检索名为
“6”
的属性,TypeScript不限制在非数组上使用括号内的属性访问。