TypeOf и Утверждение - PullRequest
       9

TypeOf и Утверждение

0 голосов
/ 21 сентября 2018
let message3;
console.log(typeof((<string>message3)));  //Output case1: undefined
console.log(typeof((message3 as string)));//Output case2: undefined
console.log(typeof((message3 as "ABC"))); //Output case3: undefined
console.log(typeof((message3 = "ABC")));  //Output case4: string

В приведенном выше случае, почему регистр 1-3 не работал и выдал вывод в виде строки, как регистр 4.

Вопрос 1: почему в случае 1-3 отображается "undefined"?

Вопрос 2: какие изменения могут быть сделаны в случае 1-3 для вывода «строки»?

1 Ответ

0 голосов
/ 21 сентября 2018

Типы TypeScript стираются во время выполнения, а также все утверждения типов;они используются только компилятором для подтверждения правильности вашего кода.В переданном JavaScript первые три случая будут выглядеть одинаково:

console.log(typeof(message3));

и typeof(message3) не определены, потому что ... ну, вы не определили, что это что-то, как это было бы вчистый JS: он не знает о типах переменных , все, что имеет значение, это тип value внутри него, а значение undefined.

...