Я хотел написать параметр типа 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];
}
}