typescript - "Variabel 'X' kan gjøres konstant", hva betyr 'konstant'?
VStudio eller ReSharper gir meg forslaget nedenfor:
Hva betyr konstant i denne situasjonen? Hvis det er en konstant i den nåværende metodeomfanget, hva er hensikten? Metoder pleier å være små, og derfor burde det ikke gi noen fordel sammenlignet med å være en vanlig variabel?
Vennligst opplys meg
Svar #1
Det er ikke noe komplisert.
Det er vanligvis bedre å bruke const fremfor let (og definitivt var), siden const gjør det lettere å forstå kode, fordi du bare trenger å se på den første tildelingen for å vite hva innholdet i variabelen er. Bruk det så mye som mulig.
Det bør bemerkes at selv om konstanter ikke kan tildeles på nytt, kan innholdet deres i noen tilfeller endres, for eksempel når man arbeider med et array eller et objekt. For eksempel er const x=[1]; x[0]=2; helt gyldig kode, men dette bør betraktes som et anti-mønster, fordi man ville forvente at en konstant forblir konstant, og dermed bryter prinsippet om minst mulig forbauselse.
Du kan selvfølgelig oppdatere et array med en const ved å ganske enkelt lage en kopi av arrayet og tildele det til en ny const:
const x = [1];
const x2 = [...x, 2];
Dette har faktisk ytelseshensyn som du kanskje må vurdere når du har med ekstremt store matriser å gjøre.
Nøkkelordene const og let er en del av ECMAScript 2015-standarden. Så når du bruker const eller let og transpilere ned til eldre ECMAScript-mål, blir const og let transpilerte til det gamle var. I dag støtter alle nettlesere const, og det er ingen reelle ytelsesbetraktninger for å bruke den ene eller den andre.
