Welcher Typ sollte dieser Variablen zugewiesen werden.autosaveInterval?
öffentliches autoSaveInterval :number;
– Arash
17. Juli 2018 um 8:28 Uhr
Sie müssen keinen Typ angeben; autoSaveInterval leitet seinen Typ aus dem Rückgabewert von ab setInterval Anruf. In Browserplattformen ist dies numberaber in node.js ist es ein Timer
Zu spät zur Party, aber der beste Typ (besonders da der Typ undurchsichtig ist, kümmern wir uns nur darum, dass wir ihn weitergeben können clearInterval() später) könnte die automatisch abgeleitete sein, dh. so etwas wie:
ReturnType<typeof setInterval>
Mann, das hätte definitiv als die richtige Antwort ausgewählt werden sollen. “number” funktioniert nicht, besonders in eckig
– Akin_Glen
19. Mai 2020 um 5:17 Uhr
Ich trete der Party bei, Nummer hat bei mir auch nicht funktioniert, danke!!
– Itay
1. September 2020 um 8:42 Uhr
Die sauberste Art, das Problem zu lösen, und funktioniert in allen Umgebungen
– Christoph Marois
15. Januar 2021 um 17:00 Uhr
Wow, wusste nichts über ReturnType. Das ist riesig!
– ICW
9. August 2021 um 19:07 Uhr
Der Typ hängt davon ab, welche Funktion Sie verwenden werden. Es gibt 2 Überladungen, der Rückgabetyp ist in einem roten Begrenzungsrahmen markiert:
Um diejenige zu verwenden, die eine Nummer zurückgibt, verwenden Sie bitte:
window.setInterval(...)
Könnten Sie die Website oder das Buch, auf das Sie diese Referenz erhalten haben, teilen? Danke.
– RiverTwilight
31. Januar 2021 um 13:53 Uhr
Hallo, dies ist kein Buch, das Sie finden können, wenn Sie mit Visual Studio arbeiten und nach Implementierung suchen.
– Stav Bodik
31. Januar 2021 um 15:39 Uhr
In der Browserumgebung sollte es so sein window.setInterval und der Rückgabetyp ist die Zahl, wie sie ist.
– Sohn Tr.
27. Dezember 2022 um 2:06 Uhr
Benutzer3003238
Der Typ ist Zahl;
private autoSaveInterval: number = setInterval(() => {
console.log('123');
}, 5000);
@gfels Weil setInterval das zurückgibt, was den ID-Wert des eingestellten Timers darstellt. Sie können diesen Wert mit der Methode clearInterval() verwenden, um den Timer abzubrechen. Es ist keine Funktion, weil Sie ihr keinen Funktionshandler zuweisen, Sie weisen ihr den Ergebnis-/Rückgabewert einer Funktion zu.
– Benutzer3003238
17. Juli 2018 um 8:39 Uhr
Wenn Sie TypeScript verwenden und Compilerfehler erhalten, weil irgendwie der NodeJS.Timer-Typ abgeleitet wird: Wechseln Sie zu window.setInterval, um anzugeben, dass Sie node nicht verwenden, und der DOM-Typ sollte verwendet werden, was in der Tat eine Zahl ist.
– Michahell
22. Juni 2021 um 13:37 Uhr
Es ist keine Nummer in node.js
– Jason Zhou
5. Juli 2021 um 5:17 Uhr
Eckiger Junge
Ich glaube, dass NodeJS.Timeout und widow.setInterval eine Zahl sind:
const nodeInterval: NodeJS.Timeout = setInterval(() => {
// do something
}, 1000);
const windowInterval: number = window.setInterval(() => {
// do something
}, 1000);
Asche
Verwenden Sie den typeof-Operator, um den Datentyp einer beliebigen Variablen wie folgt zu finden:
typeof ist ein unärer Operator, der einem einzelnen Operanden vorangestellt wird, der einen beliebigen Typ haben kann. Sein Wert ist eine Zeichenfolge, die den Typ des Operanden angibt.
öffentliches autoSaveInterval :number;
– Arash
17. Juli 2018 um 8:28 Uhr
Sie müssen keinen Typ angeben;
autoSaveInterval
leitet seinen Typ aus dem Rückgabewert von absetInterval
Anruf. In Browserplattformen ist diesnumber
aber in node.js ist es ein Timer– Explosionspillen
17. Juli 2018 um 8:33 Uhr
Verwandtes Github-Problem: github.com/microsoft/TypeScript/issues/842
– V. Rubinetti
24. Februar 2022 um 1:53 Uhr