Typescript: Argumentul de tip 'number' nu poate fi atribuit parametrului de tip 'string'


Încerc să găsesc o modalitate simplă de a elimina zecimalele unui număr în TypeScript. Pe baza a ceea ce am găsit, metoda ParseInt ar trebui să funcționeze, dar primesc eroarea

Argument of type 'number' is not assignable to parameter of type 'string'

Cod :

function testFunction (frame_count: number, frame_count_correct: number): number {
let score: number = 0 
if (frame_count > 1) {
    score = frame_count_correct/frame_count
} else {
    score = 0
}

return parseInt(score);

}

Răspuns #1

score este număr. parseInt așteaptă un argument de tip șir pentru că scopul său este să parseze întregi din șiruri, așa cum sugerează numele funcției.

Dacă intenția este de a returna partea întreagă, parseInt nu este necesar. În schimb, ar trebui să fie:

score = Math.floor(frame_count_correct/frame_count)

Răspunsul #2

Încerci să folosești funcția parseInt care este definită pentru variabile de tip șir de caractere cu o variabilă de tip double. Ești sigur? Poți folosi Math.floor(score) în schimb.