javascript - TypeScript - ce tip are setInterval


Dacă aș dori să atribui un tip unei variabile căreia ulterior îi va fi atribuit un setInterval astfel:

this.autoSaveInterval = setInterval(function(){
      if(this.car.id){
        this.save();
      }
      else{
        this.create();
      }
    }.bind(this), 50000);

Ce tip ar trebui atribuit variabilei this.autosaveInterval?

Răspuns #1

Târziu la petrecere, dar cel mai bun tip (mai ales deoarece tipul este opac, ne pasă doar că îl putem transmite mai târziu la clearInterval()) ar putea fi cel dedus automat, adică ceva de genul:

ReturnType<typeof setInterval>

Răspunsul #2

Tipul depinde de funcția pe care urmează să o folosiți, există 2 suprasarcini, tipul de returnare este marcat într-un chenar roșu:

Pentru a folosi pe cel care returnează numărul, vă rugăm să utilizați :

window.setInterval(...)

Răspunsul #3

Tipul este număr;

private autoSaveInterval: number = setInterval(() => {
  console.log('123');
}, 5000);

Răspunsul #4

Cred că este NodeJS.Timeout și window.setInterval este număr:

const nodeInterval: NodeJS.Timeout = setInterval(() => {
  // do something
}, 1000);

const windowInterval: number = window.setInterval(() => {
  // do something
}, 1000);