let li: Element [] = document.getElementsByTagName ('span');Typ 'NodeListOf <HTMLLIElement>' kann nicht dem Typ 'Element []' zugewiesen werden
I erhalten die Typenkonvertierungsfehler, wie die Werte in 'Element []' speichern ??
let li: Element [] = document.getElementsByTagName ('span');Typ 'NodeListOf <HTMLLIElement>' kann nicht dem Typ 'Element []' zugewiesen werden
I erhalten die Typenkonvertierungsfehler, wie die Werte in 'Element []' speichern ??
Das Problem hier ist, dass getElementsByTagName
ein Array-ähnliches Objekt zurückgibt, kein tatsächliches Array. Sie müssen es einen zwingen zuerst die Ausbreitung Operator (oder [].slice.call(...)
für ES5):
let li: HTMLElement[] = [...document.getElementsByTagName('span')]
Das Objekt zurückgegeben von document.getElementsByTagName('span')
ist nicht kompatibel mit einem Array-Objekt. Sie müssen sie erklären, wie folgend:
let li: NodeListOf<HTMLElement> = document.getElementsByTagName('span');
Wenn Sie das wirklich brauchen ein Array-Objekt zu sein, die Sie verwenden können:
let li: NodeListOf<HTMLElement> = document.getElementsByTagName('span');
let liArray: Element[] = Array.prototype.slice.call(li);
Ich nehme an, es ein Array ist, so Sie 'push()'? –
können Sie alternative Methode vorschlagen? @ Herr Alien – Prasanna