TypeScript非常新,所以我确信我的代码不止一件事。
let htmlOption: HTMLCollection = document.getElementsByClassName(OPTION_SELECTOR);
let selected: HTMLElement = htmlOption[index];
// this throws an error "Initializer type Element is not assignable to variable type HTMLElement
selected.focus();
我很确定这与HTMLCollection
的孩子Element
而不是HTMLElement
这一事实有关。但我需要将注意力集中在HTMLElement
(Element
上不允许)
但以下内容不会引发任何错误:
let htmlOption = (document.getElementsByClassName(OPTION_SELECTOR) as HTMLCollection);
let selected = (htmlOption[index] as HTMLElement);
selected.focus();
我不明白这些是如何不同的。我以为我可以使用varName:type = definition?
声明变量