TypeScript:
Merkkijonojen osien poimiminen
How to: (Kuinka tehdä:)
// Otetaan esimerkki TypeScriptillä
let lause: string = "Hello, maailma!";
// substring-metodi (alkuindeksi, loppuindeksi):
let osajono1 = lause.substring(7, 14);
console.log(osajono1); // tulostuu "maailma"
// slice-metodi (alkuindeksi, loppuindeksi):
let osajono2 = lause.slice(7, -1);
console.log(osajono2); // tulostuu "maailma!"
// substr-metodi (alkuindeksi, pituus):
// Huom: vanhentunut, mutta esimerkin vuoksi tässä
let osajono3 = lause.substr(7, 7);
console.log(osajono3); // tulostuu "maailma"
Deep Dive (Sukellus syvyyksiin)
Alun perin substring-toimintoja tarvittiin tiedon käsittelyyn: tiedostopoluista nimen erottaminen, käyttäjänimistä domain-erottelu jne. Historiallisesti näitä on hyödynnetty monissa ohjelmointikielissä, kuten JavaScriptissä, josta TypeScript on ponnistanut.
JavaScriptissä substringit ovat olleet pitkään käytössä, ja TypeScript on luontevasti tuonut mukanaan tämän perinnön. substring
, slice
ja substr
ovat kaikki eri tapoja saada aikaan sama lopputulos, mutta on hyvä huomata, että substr
-metodi on vanhentunut ja sitä tulisi välttää uudessa koodissa.
substring
ja slice
-metodeilla on pieniä eroavaisuuksia käytössä: esim. substring
ei salli negatiivisia indeksejä, kun taas slice
käsittelee ne älykkäästi osoittamaan merkkijonon lopusta. Valinta riippuu tilanteesta ja tarpeista, mutta slice
on monipuolisempi.