JavaScript Academy · Oppitunti

Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö

Kerää loput arvot ja ominaisuudet, kloonaa ja yhdistä spread-syntaksilla sekä vältä piilomutaatioita yksinkertaisilla malleilla

Oppitunti 2/28 vaihetta

Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö on ilmainen JavaScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/2. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu JavaScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. JavaScript Academy-kurssilla on yhteensä 2 oppituntia.

Johdanto

Tavoite: Käyttäkää rest-syntaksia ylimääräisten arvojen keräämiseen ja spread-syntaksia kopiointiin tai yhdistämiseen.

  • Taulukon ja olion spread
  • Taulukon rest (alku/loppu)
  • Olion rest (joidenkin avainten poissulkeminen)
  • Muuttaminen ja kopiointi
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 1

Taulukon spreadin perusteet

[...arr] kopioi taulukon; yhdistäkää taulukoita levittämällä ne uuteen taulukkoon.

// Array spread creates a shallow copy and merges arrays
const a = [1, 2];
const b = [3, 4];

const clone = [...a];
const merged = [...a, ...b];

console.log("a:", a);
console.log("clone:", clone);
console.log("merged:", merged);
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 2

Taulukon rest-hahmo

Rest-elementti (…tail) kokoaa jäljelle jäävät alkiot uudeksi taulukoksi.

// Array rest collects the remaining items
const nums = [10, 20, 30, 40];

const [head, ...tail] = nums;

console.log("head:", head);
console.log("tail:", tail);
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 3

Olion spreadin perusteet

Olioiden yhdistämisessä järjestyksellä on merkitystä: myöhemmät spreadit korvaavat aiemmat avaimet.

// Object spread copies and merges; later keys win
const base = { theme: "light", compact: false };
const override = { compact: true };

const copy = { ...base };
const merged = { ...base, ...override };

console.log("copy:", copy);
console.log("merged:", merged);
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 4

Olion rest-hahmo

Käyttäkää { a, ...rest }-rakennetta poimiaksenne muutaman ominaisuuden ja kootaksenne loput yhteen.

// Object rest collects remaining properties
const user = { id: 7, name: "Ayla", role: "admin" };

const { id, ...publicInfo } = user;

console.log("id:", id);
console.log("publicInfo:", publicInfo);
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 5

Mutaation välttäminen kopioimalla

Luokaa uusi olio arvoja muuttaessanne; se on selkeämpää ja turvallisempaa kuin jaetun datan muuttaminen.

// Copy instead of mutating original data
const settings = { sound: true, volume: 5 };

// Mutating version (avoid in shared state)
// settings.volume = 6;

// Non-mutating: create an updated copy
const updated = { ...settings, volume: 6 };

console.log("settings:", settings);
console.log("updated:", updated);
Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 6

Olion rest-tietovisa

Pikatarkistus: Olion rest.

Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 7

Kertaus

Kertaus: Spread kopioi ja yhdistää taulukoita ja olioita, kun taas rest kokoaa jäljelle jäävät arvot. Suosikaa kopiointia mutaation sijaan, jotta muutokset pysyvät selkeinä.

Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö — kuvitus 8
Aloita maksutta

Opi JavaScript tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
59
Oppitunnit
200

Usein kysytyt kysymykset

Onko oppitunti ”Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa JavaScript Academy-oppimispolun 3 oppituntia, myös oppitunnin “Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. JavaScript Academy-kurssilla on yhteensä 2 oppituntia.

Mitä opin oppitunnilla ”Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö”?

Kerää loput arvot ja ominaisuudet, kloonaa ja yhdistä spread-syntaksilla sekä vältä piilomutaatioita yksinkertaisilla malleilla Harjoittelet JavaScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni JavaScript Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin JavaScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/2.

Kuinka kauan ”Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä JavaScript Academy-oppitunnilla?

Kyllä. Jokainen JavaScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Taulukoiden ja objektien destructuring-perusteet
  2. Rest ja spread — taulukoiden ja objektien idiomaattinen käyttö
← Takaisin: JavaScript Academy