Readonly-arrayer och oföränderlig data
Använd ReadonlyArray för att förhindra oavsiktliga ändringar.
Readonly-arrayer och oföränderlig data är en gratis lektion i TypeScript Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för TypeScript Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i TypeScript Academy innehåller totalt 4 lektioner.
Välkommen
Readonly-modifieraren på arrayer
const ids: readonly number[] = [1, 2, 3];
// ids.push(4); // Error
// ids[0] = 99; // Error
console.log(ids[0]); // OK — reading is fineDen generiska formen ReadonlyArray<T>
const names: ReadonlyArray<string> = ['Alice', 'Bob'];
// names.push('Charlie'); // ErrorReturnera readonly-arrayer från funktioner
function getConfig(): readonly string[] {
return ['host', 'port', 'db'];
}Oföränderliga funktionsparametrar
function sum(nums: readonly number[]): number {
return nums.reduce((a, b) => a + b, 0);
// nums.push(99); // Error inside function
}as const för literal-arrayer
const colors = ['red', 'green', 'blue'] as const;
// type: readonly ['red', 'green', 'blue']
// colors.push('yellow'); // ErrorReadonly innebär inte djupfrysning
const users: readonly { name: string }[] = [{ name: 'Alice' }];
// users.push({}); // Error
users[0].name = 'Bob'; // Allowed — object itself is mutableDjupt oföränderlig med Readonly<T>
type ImmutableUser = Readonly<{ name: string; scores: readonly number[] }>;
const u: ImmutableUser = { name: 'Alice', scores: [90, 85] };
// u.name = 'Bob'; // Error
// u.scores.push(100); // ErrorTilldelning mellan muterbara och readonly-arrayer
const ro: readonly number[] = [1, 2];
const mutable: number[] = ro; // Error!När readonly-arrayer bör användas
Spreadning skapar en ny muterbar array
const base: readonly number[] = [1, 2, 3];
const extended: number[] = [...base, 4]; // new mutable arraySnabbkontroll
Sammanfattning
Lär dig TypeScript med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 101
- Lektioner
- 352
Vanliga frågor
Är lektionen ”Readonly-arrayer och oföränderlig data” gratis?
Ja – hela texten till ”Readonly-arrayer och oföränderlig data” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i TypeScript Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i TypeScript Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”Readonly-arrayer och oföränderlig data”?
Använd ReadonlyArray för att förhindra oavsiktliga ändringar. Ni övar på TypeScript Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig TypeScript Academy?
Du behöver inga förkunskaper. Utbildningen i TypeScript Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”Readonly-arrayer och oföränderlig data”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här TypeScript Academy-lektionen?
Ja. Varje TypeScript Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Typade arrayer: T[] och Array
- Readonly-arrayer och oföränderlig data
- Tupler: typade arrayer med fast längd
- Enum: numeriska konstanter och strängkonstanter