Jquery useita hakuja merkkijonossa. JavaScript-menetelmät merkkijonojen käsittelyyn. Jaa merkkijono alimerkkijonoihin

On olemassa useita tapoja valita alimerkkijonoja JavaScriptissä, mukaan lukien osamerkkijono(), substr(), viipale() ja toimintoja regexp.

JavaScript 1.0 ja 1.1 osamerkkijono() on olemassa ainoa yksinkertainen tapa valita osa suuremmasta merkkijonosta. Esimerkiksi rivin valitsemiseen Lehdistö alkaen Ilmaisu, käytä "Lauseke".alimerkkijono(2,7). Toiminnon ensimmäinen parametri on merkkiindeksi, josta valinta alkaa, kun taas toinen parametri on merkkiindeksi, johon valinta päättyy (ei sisällä): osamerkkijono(2,7) sisältää indeksit 2, 3, 4, 5 ja 6.

JavaScript 1.2:ssa toimii substr(), viipale() Ja regexp voidaan käyttää myös merkkijonojen jakamiseen.

Substr() käyttäytyy samalla tavalla kuin substr Pearl-kieli, jossa ensimmäinen parametri ilmaisee merkkiindeksin, josta valinta alkaa, kun taas toinen parametri määrittää alimerkkijonon pituuden. Suorittaaksesi saman tehtävän kuin edellisessä esimerkissä, sinun on käytettävä "lauseke".substr(2,5). Muista, että 2 on aloituspiste ja 5 on tuloksena olevan osamerkkijonon pituus.

Kun sitä käytetään jousilla, viipale() käyttäytyy samalla tavalla kuin toiminto osamerkkijono(). Se on kuitenkin paljon tehokkaampi, ja se pystyy toimimaan minkä tahansa tyyppisten taulukoiden, ei vain merkkijonojen, kanssa. viipale() käyttää myös negatiivisia siirtymiä päästäkseen haluttuun kohtaan rivin lopusta alkaen. "Expression".slice(2,-3) palauttaa toisen ja kolmannen merkin väliltä löytyneen alimerkkijonon lopusta ja palaa uudelleen painamalla.

Viimeinen ja yleisin tapa työskennellä alimerkkijonojen kanssa on JavaScript 1.2:n säännöllisten lausekkeiden funktioiden käyttäminen. Jälleen kerran kiinnitetään huomiota samaan esimerkkiin, alimerkkijonoon "Lehdistö" saatu merkkijonosta "Ilmaisu":

Write("Expression".match(/press/));

Sisäänrakennettu esine merkkijono

Esine merkkijono Tämä on primitiivisen merkkijonoarvon objektitoteutus. Sen rakentaja näyttää tältä:

Uusi merkkijono( merkitys?)

Tässä merkitys mikä tahansa merkkijonolauseke, joka määrittää objektin primitiivisen arvon. Jos sitä ei ole määritetty, objektin primitiivinen arvo on "" .

String-objektin ominaisuudet:

rakentaja Rakentaja, joka loi objektin. Merkkien määrä riviä kohden. prototyyppi Viittaus objektiluokan prototyyppiin.

Standardimerkkijonoobjektimenetelmät

Palauttaa merkin annetussa kohdassa merkkijonossa. Palauttaa merkkijonon tietyssä kohdassa olevan merkin koodin. Palauttaa merkkijonojen ketjun. Luo merkkijonon Unicode-koodien määrittämistä merkeistä. Palauttaa määritetyn alimerkkijonon ensimmäisen esiintymän sijainnin. Palauttaa määritetyn osamerkkijonon viimeisen esiintymän sijainnin. Vertaa kahta merkkijonoa käyttöjärjestelmän kielen perusteella. Vastaa merkkijonoa säännölliseen lausekkeeseen. Yhdistää merkkijonon säännölliseen lausekkeeseen ja korvaa löydetyn osamerkkijonon uudella osamerkkijonolla. Täyttää merkkijonon säännöllisen lausekkeen kanssa. Hakee osan merkkijonosta ja palauttaa uuden merkkijonon. Jakaa merkkijonon alimerkkijonojen joukoksi. Palauttaa sijainnin ja pituuden antaman osamerkkijonon. Palauttaa aloitus- ja loppupaikan määrittämän alimerkkijonon. Muuntaa kaikki merkkijonon kirjaimet pieniksi ottaen huomioon käyttöjärjestelmän kielen. Muuntaa kaikki merkkijonon kirjaimet isoiksi ottaen huomioon käyttöjärjestelmän kielen. Muuntaa kaikki merkkijonon kirjaimet pieniksi. Muuntaa objektin merkkijonoksi. Muuntaa kaikki merkkijonon kirjaimet isoiksi. Palauttaa objektin primitiivisen arvon.

Epätyypilliset String-objektin menetelmät

Luo HTML-kirjanmerkin ( …). Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Luo HTML-hyperlinkin (). Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin …. Kääri merkkijonon tunnisteisiin ….

pituus omaisuutta

Syntaksi : esine.pituus Attribuutit: (DontEnum, DontDelete, ReadOnly)

Omaisuuden arvo pituus on merkkien lukumäärä rivillä. Tyhjälle merkkijonolle tämä arvo on nolla.

ankkuri menetelmä

Syntaksi : esine.ankkuri( Nimi) Argumentit: Nimi Tulos: merkkijonoarvo

Menetelmä ankkuri esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa kirjanmerkin luomiseen HTML-dokumenttiin määritetyllä nimi. Esimerkiksi operaattori document.write("Oma teksti".ankkuri("Kirjanmerkki")) vastaa operaattoria document.write(" Minun tekstini") .

iso menetelmä

Syntaksi : esine.iso() Tulos: merkkijonoarvo

Menetelmä iso palauttaa merkkijonon, joka koostuu esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseen suurella kirjasimella. Esimerkiksi lause document.write("Oma teksti".big()) näyttää merkkijonon Oma teksti selainnäytöllä.

vilkkumistapa

Syntaksi : esine.räpäytys() Tulos: merkkijonoarvo

Menetelmä räpäytys palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseen vilkkuvalla fontilla. Nämä tunnisteet eivät ole osa HTML-standardia, ja niitä tukevat vain Netscape- ja WebTV-selaimet. Esimerkiksi lause document.write("Oma teksti".blink()) näyttää merkkijonon Oma teksti selainnäytöllä.

rohkea menetelmä

Syntaksi : esine.lihavoitu() Tulos: merkkijonoarvo

Menetelmä lihavoitu palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi lihavoituna. Esimerkiksi operaattori document.write("Oma teksti".bold()) näyttää rivin Minun tekstini .

charAt menetelmä

Syntaksi : esine.charAt( asema) Argumentit: asema mikä tahansa numeerinen lauseke Tulos: merkkijonoarvo

Menetelmä charAt palauttaa merkkijonon, joka koostuu annetussa merkistä asemat primitiivinen merkkijonoarvo esine. Rivimerkkien paikat on numeroitu nollasta esine. -1.

Jos sijainti on tämän alueen ulkopuolella, palautetaan tyhjä merkkijono. Esimerkiksi käsky document.write("String".charAt(0)) tulostaa merkin C selaimen näyttöön.

Syntaksi : esine charCodeAt-menetelmä asema) Argumentit: asema mikä tahansa numeerinen lauseke Tulos.charCodeAt(

Menetelmä charAt: numeerinen arvo asemat primitiivinen merkkijonoarvo esine palauttaa luvun, joka on yhtä suuri kuin annetussa merkin Unicode-koodi esine. Rivimerkkien paikat on numeroitu nollasta . -1. Jos sijainti on tämän alueen ulkopuolella, se palaa

NaN

Syntaksi : esine. Esimerkiksi operaattori document.write("String".charCodeAt(0).toString(16)) näyttää venäläisen kirjaimen "C" heksadesimaalikoodin selaimen näytöllä: 421. concat menetelmä, .concat(, …, rivi0) Argumentit: concat menetelmä, .concat(, …, rivi0 rivi1 Tulos: merkkijonoarvo

Menetelmä merkkijonoN mitään merkkijonolausekkeita

esine + concat menetelmä + .concat( + … + rivi0

concat

palauttaa uuden merkkijonon, joka on alkuperäisen merkkijonon ja menetelmän argumenttien ketjutus. Tämä menetelmä vastaa operaatiota

Syntaksi : esine Esimerkiksi operaattori document.write("Frost and sun.".concat("Ihana päivä.")) näyttää rivin Frost and sun selainnäytöllä. Se on upea päivä. Tulos: merkkijonoarvo

Menetelmä kiinteä menetelmä palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin ….fixed()

korjattu

Syntaksi : esine. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi teletype-kirjasimella. Esimerkiksi lause document.write("Oma teksti".fixed()) näyttää merkkijonon Oma teksti selainnäytöllä. Argumentit: fontcolor menetelmä.fontcolor(väri) Tulos: merkkijonoarvo

Menetelmä väri palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin fontcolor menetelmä>…. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi tietyllä värillä. Esimerkiksi lause document.write("Oma teksti".fontcolor("punainen")) näyttää merkkijonon Oma teksti selainnäytöllä.

fonttikoon menetelmä

Syntaksi : esine.Fonttikoko( koko) Argumentit: koko numeerinen lauseke Tulos: merkkijonoarvo

Menetelmä Fonttikoko palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi määritetyllä kirjasinkoolla. Esimerkiksi lause document.write("Oma teksti".fontsize(5)) näyttää merkkijonon Oma teksti selainnäytöllä.

CharCode-menetelmästä

Syntaksi : String.fromCharCode( koodi1, koodi 2, …, koodiN) Argumentit: koodi1, koodi 2, …, koodiN numeerisia lausekkeita Tulos: merkkijonoarvo

Menetelmä CharCodesta luo uuden merkkijonon (mutta ei merkkijonoobjektia), joka on Unicode-merkkien ja koodien ketjutus koodi1, koodi 2, …, koodiN.

Tämä on objektin staattinen menetelmä merkkijono, joten sinun ei tarvitse erikseen luoda merkkijonoobjektia käyttääksesi sitä. Esimerkki:

Muutt s = String.fromCharCode(65, 66, 67); // s on yhtä kuin "ABC"

indexOf menetelmä

Syntaksi : esine.sisällysluettelo( alamerkkijono[,alkaa]?) Argumentit: alamerkkijono mikä tahansa merkkijonolauseke alkaa mikä tahansa numeerinen lauseke Tulos.charCodeAt(

Menetelmä sisällysluettelo palauttaa ensimmäisen paikan osamerkkijonoja primitiivisessä merkkijonoarvossa esine. esine alkaa alkaa alkaa alkaa enemmän kuin esine esine

Haku suoritetaan vasemmalta oikealle. Muuten tämä menetelmä on identtinen menetelmän kanssa. Seuraava esimerkki laskee alimerkkijonokuvion esiintymien lukumäärän merkkijonossa str .

Funktio esiintyy(str, kuvio) ( var pos = str.indexOf(pattern); for (muuttujien määrä = 0; pos != -1; count++) pos = str.indexOf(pattern, pos + pattern.length); paluuluku ;)

kursivoitu menetelmä

Syntaksi : esine.italics() Tulos: merkkijonoarvo

Menetelmä kursivoitu palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi kursiivilla kirjasimilla. Esimerkiksi operaattori document.write("Oma teksti".kursivointi()) näyttää rivin Minun tekstini .

lastIndexOf-menetelmä

Syntaksi : esine.lastIndexOf( alamerkkijono[,alkaa]?) Argumentit: alamerkkijono mikä tahansa merkkijonolauseke alkaa mikä tahansa numeerinen lauseke Tulos.charCodeAt(

Menetelmä lastIndexOf palauttaa viimeisen aseman osamerkkijonoja primitiivissä merkkijonoarvossa esine esine. -1. alkaa Jos valinnainen argumentti annetaan alkaa, sitten haku suoritetaan paikasta alkaen alkaa; jos ei, niin paikasta 0, eli rivin ensimmäisestä merkistä. Jos alkaa enemmän kuin esine negatiivinen, niin se on yhtä suuri kuin nolla; Jos esine. -1, niin se otetaan yhtä suureksi

. -1.

Jos objekti ei sisällä tätä osamerkkijonoa, palautetaan arvo -1.

Haku suoritetaan oikealta vasemmalle. Muuten tämä menetelmä on identtinen menetelmän kanssa. Esimerkki:

Syntaksi : esine Var n = "Valkoinen valas".lastIndexOf("valas"); // n on 6 linkkimenetelmä) Argumentit: linkkimenetelmä mikä tahansa merkkijonolauseke Tulos: merkkijonoarvo

Menetelmä linkki palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, uri-tunnisteiden sisällä"> . Ei voida tarkistaa, onko lähdemerkkijono jo sisältynyt näihin tunnisteisiin. Tätä menetelmää käytetään yhdessä menetelmien document.write ja document.writeln kanssa luomaan hyperlinkki HTML-dokumenttiin, jossa on määritetty linkkimenetelmä. Esimerkiksi käsky document.write("Oma teksti".link("#Kirjanmerkki")) vastaa lauseketta document.write("Oma teksti") .

localeCompare-menetelmä

Syntaksi : esine.localeCompare( .concat() Argumentit: .concat( mikä tahansa merkkijonolauseke Tulos: numero

Tuki

Menetelmä localeVertaa vertaa kahta merkkijonoa ottaen huomioon käyttöjärjestelmän kansalliset asetukset. Se palauttaa -1, jos primitiivinen arvo esine Vähemmän rivit1, +1, jos se on suurempi rivit1, ja 0, jos nämä arvot ovat samat.

sovitusmenetelmä

Syntaksi : esine.ottelu( regvyr) Argumentit: regvyr Tulos: joukko merkkijonoja

Menetelmä ottelu regvyr esine. Vastaavuuden tulos on joukko löydettyjä osamerkkijonoja tai tyhjä, jos osumia ei ole. Jossa:

  • Jos regvyr ei sisällä yleistä hakuvaihtoehtoa, menetelmä suoritetaan regvyr.exec(esine) ja sen tulos palautetaan. Tuloksena oleva taulukko sisältää löydetyn osamerkkijonon elementistä, jonka indeksi on 0, ja loput elementit sisältävät osalausekkeita vastaavat osamerkkijonot regvyr, suluissa.
  • Jos regvyr sisältää yleisen hakuvaihtoehdon, sitten menetelmän regvyr.exec(esine) suoritetaan niin kauan kuin osumia löytyy. Jos n on löydettyjen osumien määrä, tuloksena on n elementin joukko, joka sisältää löydetyt alimerkkijonot. Omaisuus regvyr.lastIndex määritettiin lähdemerkkijonoon paikkanumero, joka osoittaa ensimmäiseen merkkiin viimeisen löydetyn osuman jälkeen, tai 0, jos osumia ei löytynyt.

On muistettava, että menetelmä regvyr.exec muuttaa kohteen ominaisuuksia regvyr. Esimerkkejä:

korvaa menetelmä

Syntaksi : esine.korvata( regvyr,linja) esine.korvata( regvyr,toiminto) Argumentit: regvyr säännöllinen lauseke merkkijono merkkijono lauseke toiminto funktion nimi tai funktion ilmoitus Tulos: uusi rivi

Menetelmä korvata vastaa säännöllistä lauseketta regvyr primitiivisen merkkijonon arvolla esine ja korvaa löydetyt osamerkkijonot muilla osamerkkijonoilla. Tuloksena on uusi merkkijono, joka on kopio alkuperäisestä merkkijonosta tehtyjen korvausten kanssa. Korvausmenetelmä määräytyy globaalin hakuvaihtoehdon mukaan regvyr ja toisen argumentin tyyppi.

Jos regvyr ei sisällä yleistä hakuvaihtoehtoa, niin haku suoritetaan ensimmäiselle vastaavalle osamerkkijonolle regvyr ja se vaihdetaan. Jos regvyr sisältää yleisen hakuvaihtoehdon, sitten kaikki osamerkkijonot vastaavat regvyr, ja ne vaihdetaan.

linja, sitten jokainen löydetty alimerkkijono korvataan sillä. Tässä tapauksessa rivi voi sisältää seuraavat objektiominaisuudet RegExp, kuten $1 , , $9 , lastMatch , lastParen , leftContext ja rightContext . Esimerkiksi operaattori document.write("Herkullisia omenoita, mehukkaita omenoita.".replace(/omenat/g, "päärynät")) näyttää rivin Herkulliset päärynät, mehukkaat päärynät selaimen näytöllä.

Jos toinen argumentti on toiminto, niin jokainen löydetty osamerkkijono korvataan kutsumalla tätä funktiota. Funktiolla on seuraavat argumentit. Ensimmäinen argumentti on löydetty osamerkkijono, jota seuraavat argumentit, jotka vastaavat kaikkia osalausekkeita regvyr, suluissa, toiseksi viimeinen argumentti on löydetyn alimerkkijonon sijainti lähdemerkkijonosta laskettuna nollasta, ja viimeinen argumentti on itse lähdemerkkijono. Seuraava esimerkki näyttää kuinka menetelmää käytetään korvata voit kirjoittaa funktion, joka muuntaa Fahrenheitin Celsiuksiksi. Annettu skenaario

Funktio myfunc($0,$1) ( return (($1-32) * 5 / 9) + "C"; ) funktio f2c(x) ( var s = Merkkijono(x); return s.replace(/(\d+() \.\d*)?)F\b/, myfunc ) document.write(f2c("212F"));

näyttää rivin 100C selaimen näytöllä.

Huomaa, että tämä menetelmä muuttaa objektin ominaisuuksia regvyr.

Korvaa esimerkki

Korvaa kaikki alimerkkijonon esiintymät merkkijonossa

Usein tapahtuu, että joudut korvaamaan kaikki yhden merkkijonon esiintymät toisella merkkijonolla:

Var str = "foobarfoobar"; str=str.replace(/foo/g"xxx"); // tulos on str = "xxxbarxxxbar";

hakumenetelmä

Syntaksi : esine.Hae( regvyr) Argumentit: regvyr mikä tahansa säännöllinen lauseke Tulos: numeerinen lauseke

Menetelmä Hae vastaa säännöllistä lauseketta regvyr primitiivisen merkkijonon arvolla esine. Vastaavuuden tulos on ensimmäisen löydetyn osamerkkijonon sijainti nollasta laskettuna tai -1, jos osumia ei ole. Samaan aikaan globaali hakuvaihtoehto sisään regvyr ohitetaan, ja ominaisuuksia regvyrÄlä vaihda.

Esimerkkejä:

Syntaksi : esine siivumenetelmä alkaa [,.viipale(]?) Argumentit: alkaa Ja .viipale( loppu Tulos: uusi rivi

Menetelmä mitään numeerisia lausekkeita esine viipale alkaa, asennosta .viipale( asentoon .viipale( alkaa, ilman sitä. Jos

ja alkuperäisen rivin loppuun asti. esine Rivimerkkien paikat on numeroitu nollasta alkaa esine. +alkaa. -1. .viipale( Jos arvo esine. +.viipale(. Jos arvo

negatiivinen, se korvataan merkillä

. Toisin sanoen negatiivisia argumentteja käsitellään poikkeuksina merkkijonon lopusta.

Syntaksi : esine Tuloksena on merkkijonoarvo, ei merkkijonoobjekti. Esimerkiksi käsky document.write("ABCDEF".slice(2,-1)) tulostaa merkkijonon CDE selaimen näytölle. Tulos: merkkijonoarvo

Menetelmä pieni menetelmä palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin ….pieni()

pieni

Syntaksi : esine. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi pienellä kirjasimella. Esimerkiksi lause document.write("Oma teksti".small()) näyttää merkkijonon Oma teksti selainnäytöllä. jaettu menetelmä [,.jakaa(]?) Argumentit: jaettu menetelmä merkkijono tai säännöllinen lauseke .jakaa( numeerinen lauseke Tulos: merkkijono array(objekti Array)

Menetelmä jakaa rikkoo primitiivisen arvon esine alimerkkijonoihin ja palauttaa sen. Jako osamerkkijonoihin tapahtuu seuraavasti. Lähdemerkkijonoa etsitään vasemmalta oikealle erotin. Kun se on löydetty, alimerkkijono edellisen erottimen lopusta (tai rivin alusta, jos tämä on erottimen ensimmäinen esiintyminen) löydetyn alkuun lisätään osamerkkijonotaulukkoon. Näin ollen itse erotin ei esiinny osamerkkijonon tekstissä.

Valinnainen argumentti .jakaa( määrittää tuloksena olevan taulukon suurimman mahdollisen koon. Jos se on määritetty, niin valinnan jälkeen numeroita Alimerkkijonomenetelmä poistuu, vaikka alkuperäisen merkkijonon tarkistus ei olisi valmis.

Erotin voidaan määrittää joko merkkijonona tai säännöllisenä lausekkeena. On useita tapauksia, jotka vaativat erityistä huomiota:

Seuraava esimerkki käyttää säännöllistä lauseketta HTML-tunnisteiden määrittämiseen erottimena. Operaattori

näyttää rivin Teksti, lihavoitu ja kursivoitu selainnäytössä.

lakkomenetelmä

Syntaksi : esine.lakko() Tulos: merkkijonoarvo

Menetelmä lakko palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseen yliviivatulla kirjasimella. Esimerkiksi lause document.write("Oma teksti".strike()) näyttää merkkijonon Oma teksti selainnäytöllä.

alimenetelmä

Syntaksi : esine.sub() Tulos: merkkijonoarvo

Menetelmä sub palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin …. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseen alaindeksinä. Esimerkiksi lause document.write("Oma teksti".sub()) näyttää merkkijonon Oma teksti selainnäytöllä.

substr-menetelmä

Syntaksi : esine.substr( asema [,pituus]?) Argumentit: asema Ja pituus numeerisia lausekkeita Tulos: merkkijonoarvo

Menetelmä substr palauttaa merkkijonon primitiivisen arvon osamerkkijonon esine alkaen tästä asemat ja sisältävät pituus hahmoja. Jos pituus ei ole määritetty, palautetaan osamerkkijono alkaen annetusta merkkijonosta asemat ja alkuperäisen rivin loppuun asti. Jos pituus on negatiivinen tai nolla, palautetaan tyhjä merkkijono.

ja alkuperäisen rivin loppuun asti. esine. -1. asema Jos esine suurempi tai yhtä suuri kuin asema., sitten palautetaan tyhjä merkkijono. Jos esine.+asema.

on negatiivinen, silloin se tulkitaan siirtymäksi rivin lopusta, eli se korvataan Huomautus asema. Jos

on negatiivinen, Internet Explorer korvaa sen virheellisesti 0:lla, joten yhteensopivuussyistä tätä vaihtoehtoa ei tule käyttää.

Var src = "abcdef"; var s1 = src.substr(1, 3); // "bcd" var s2 = src.substr(1); // "bcdef" var s3 = src.substr(-1); // "f", mutta MSIE:ssä: "abcdef"

Syntaksi : esine osamerkkijonomenetelmä alkaa [,.viipale(]) Argumentit: alkaa Ja .viipale( numeerisia lausekkeita Tulos: merkkijonoarvo

Menetelmä .substring( palauttaa merkkijonon primitiivisen arvon osamerkkijonon esine viipale alkaa, asennosta .viipale( asentoon .viipale( ei ole määritetty, sitten palautetaan alimerkkijono, alkaen paikasta alkaa, ilman sitä. Jos

ja alkuperäisen rivin loppuun asti. esine. -1. . -1. Negatiiviset argumentit tai vastaavat alkaa korvataan nollalla; jos argumentti on suurempi kuin alkuperäisen merkkijonon pituus, se korvataan sillä. Jos lisää loppu alkaa, sitten he vaihtavat paikkaa. Jos on yhtä suuri loppu

, sitten palautetaan tyhjä merkkijono.

Tuloksena on merkkijonoarvo, ei merkkijonoobjekti. Esimerkkejä:

Var src = "abcdef"; var s1 = src.substring(1, 3); // "bc" var s2 = src.substring(1, -1); // "a" var s3 = src.substring(-1, 1); // "a"

Syntaksi : esine sup menetelmä Tulos: merkkijonoarvo

Menetelmä .sup() palauttaa merkkijonon, joka koostuu primitiivistä merkkijonoarvoa esine, suljettuna tunnisteisiin … sup

. Ei voida tarkistaa, oliko alkuperäinen merkkijono jo näiden tunnisteiden sisällä. Tätä menetelmää käytetään yhdessä document.write- ja document.writeln-menetelmien kanssa tekstin näyttämiseksi yläindeksinä. Esimerkiksi lause document.write("Oma teksti".sup()) näyttää merkkijonon Oma teksti selainnäytöllä.

Syntaksi : esine toLocaleLowerCase Method Tulos.toLocaleLowerCase()

Tuki: uusi rivi

Menetelmä : Internet Explorer Tuettu versiosta 5.5 alkaen. Netscape Navigatoria ei tueta. toLocaleLowerCase

palauttaa uuden merkkijonon, jossa kaikki alkuperäisen merkkijonon kirjaimet korvataan pienillä kirjaimilla ottaen huomioon käyttöjärjestelmän kieliasetukset. Alkuperäisen merkkijonon muut merkit eivät muutu. Alkuperäinen merkkijono pysyy samana. Yleensä tämä menetelmä palauttaa saman tuloksen kuin ; ero on mahdollinen vain, jos kielikoodaus on ristiriidassa Unicode-sääntöjen kanssa isojen kirjainten muuntamiseksi pieniksi kirjaimiin.

Syntaksi : esine toLocaleUpperCase Method Tulos.toLocaleLowerCase()

Tuki: uusi rivi

Menetelmä .toLocaleUpperCase() toLocaleUpperCase

palauttaa uuden merkkijonon, jossa kaikki alkuperäisen merkkijonon kirjaimet korvataan isoilla kirjaimilla ottaen huomioon käyttöjärjestelmän kieliasetukset. Alkuperäisen merkkijonon muut merkit eivät muutu. Alkuperäinen merkkijono pysyy samana. Yleensä tämä menetelmä palauttaa saman tuloksen kuin ; ero on mahdollinen vain, jos kielikoodaus on ristiriidassa Unicode-sääntöjen kanssa pienten kirjainten muuntamiseksi isoiksi kirjaimille.

Syntaksi : esine Pienet kirjaimet -menetelmä Tulos: uusi rivi

Menetelmä .toLowerCase() pienellä kirjaimella

palauttaa uuden merkkijonon, jossa kaikki alkuperäisen merkkijonon kirjaimet on korvattu pienillä kirjaimilla. Alkuperäisen merkkijonon muut merkit eivät muutu. Alkuperäinen merkkijono pysyy samana. Esimerkiksi käsky document.write("String object".toLowerCase()) tulostaa merkkijonoobjektimerkkijonon selaimen näyttöön.

Metodi include() määrittää, löytyykö merkkijono toisesta merkkijonosta, palauttaen tarvittaessa tosi tai epätosi.

Syntaksi: -string.includes(hakumerkkijono[, sijainti])

paikka: -Lisä. Sijainti tässä merkkijonossa, josta haetaan hakumerkkijono; oletusarvo 0.

merkkijono = "LOL"; console.log(string.includes("lol")); // palauttaa false console.log(string.includes("LOL")); // palauttaa tosi

Minulla on ostoskori, jossa tuotevaihtoehdot näkyvät avattavassa valikossa, ja jos he valitsevat "kyllä", haluan saada joitain muita sivun kenttiä näkyviin.

Ongelmana on, että ostoskorissa on tekstissä myös hintamuuttaja, joka voi olla erilainen jokaiselle tuotteelle. Seuraava koodi toimii:

$(dokumentti).ready(function() ( $("select").change(function() ( var str = $("select option:selected").text(); if (str == "Kyllä (+ 6,95 $)") ( $(".kaiverrus").show(); ) else ( $(.kaiverrus").piilota(); ) )); ));

Haluaisin kuitenkin käyttää jotain tällaista, mikä ei toimi:

$(dokumentti).ready(function() ( $("select").change(function() ( var str = $("select option:selected").text(); if (str *= "Kyllä") ( $(".kaiverrus").show(); ) else ( $(.kaiverrus").piilota(); ) ));

Haluan suorittaa toiminnon vain, jos valittu vaihtoehto sisältää sanan "Kyllä" ja jättää hinnanmuuttajan huomiotta.

Viimeisin päivitys: 04/06/2018

Merkkijonojen luomiseksi voimme joko määrittää merkkijonon suoraan muuttujalle:

Anna nimi = "Tom";

String-objekti on suunniteltu toimimaan merkkijonojen kanssa, joten voit käyttää myös String-konstruktoria:

Muuttujan nimi = new String("Tom");

Mutta yleensä käytetään ensimmäistä, lyhyempää menetelmää. Ensimmäisessä tapauksessa JavaScript muuntaa tarvittaessa primitiivisen tyyppimuuttujan automaattisesti String-objektiksi.

String-objektilla on suuri joukko ominaisuuksia ja menetelmiä, joilla voimme käsitellä merkkijonoja.

Pituusominaisuus ilmaisee merkkijonon pituuden:

Var hello = "hei maailma"; console.log("Rivillä "" + hello + "" " + hello.length + " merkkiä");

Repeat()-menetelmän avulla voit luoda merkkijonon toistamalla toista merkkijonoa yhä uudelleen ja uudelleen. Toistojen määrä välitetään argumenttina:

Anna hei = "hei"; console.log(hello.repeat(3)); // Hei hei hei

Rivikuvioita

Merkkijonomallien avulla voit lisätä eri arvoja merkkijonoon. Tätä varten rivit on suljettu lainausmerkkeihin:

Anna nimi = "Tom"; let hello = `Hei $(nimi)`; console.log(hei); // Hei Tomin ikä = 23; anna info = `$(nimi) on $(ikä) vuotta vanha`; console.log(info); //Tom on 23-vuotias

Jos haluat lisätä arvon merkkijonoon, se on suljettu aaltosulkeisiin, joita edeltää dollarimerkki.

Skalaariarvojen sijasta voidaan myös lisätä monimutkaisten objektien ominaisuuksia tai lausekkeiden tuloksia:

Anna tomi =( nimi: "Tom", ikä: 25 ) anna info = `$(tom.name) on $(tom.age) vuotta vanha`; console.log(info); // Tom on 23 vuotta vanha funktio summa(x, y)( return x + y; ) olkoon a = 5, b = 4; olkoon tulos = `$(a) + $(b) = $(summa(a, b))'; console.log(tulos); // 5 + 4 = 9

Hae merkkijonosta

Tietyn osamerkkijonon merkkijonojen etsimiseen käytetään menetelmää indexOf() (osamerkkijonon ensimmäisen esiintymisen indeksi) ja lastIndexOf() (osamerkkijonon viimeisen esiintymän indeksi). Nämä menetelmät vaativat kaksi parametria:

    Etsittävä alamerkkijono

    Valinnainen parametri, joka määrittää, mistä merkistä merkkijonoa etsitään

Molemmat menetelmät palauttavat sen merkin indeksin, josta merkkijono alkaa merkkijonossa. Jos osamerkkijonoa ei löydy, palautetaan numero -1.

Let hello = "hei maailma. Heippa rauha"; let key = "maailma"; anna firstPos = hello.indexOf(avain); anna lastPos = hello.lastIndexOf(avain); console.log("Ensimmäinen esiintyminen: ", firstPos); // 7 console.log("Viimeinen esiintyminen: ", lastPos); // 17

Toinen menetelmä - include() palauttaa tosi, jos merkkijono sisältää tietyn alimerkkijonon.

Let hello = "hei maailma. Heippa rauha"; console.log(hello.includes("maailma")); // true console.log(hello.includes("hetki")); // väärä

Toisen lisäparametrin avulla voit määrittää indeksin, josta alimerkkijonon haku alkaa:

Let hello = "hei maailma. Heippa rauha"; console.log(hello.includes("maailma", 5)); // true console.log(hello.includes("hello", 6)); // väärä

Alimerkkijonon valinta

Jos haluat leikata osamerkkijonon merkkijonosta, käytä substr()- ja substring()-menetelmiä.

Substring()-menetelmässä on kaksi parametria:

    merkkijonon merkin indeksi, josta alkaen merkkijono tulee leikata

    indeksi, johon merkkijono tulee katkaista

let hello = "hei maailma. Heippa rauha"; anna maailman = hello.substring(7, 10); // 7. - 10. indeksi console.log(world); // maailma

Substr()-menetelmä ottaa myös ensimmäisenä parametrina alimerkkijonon aloitusindeksin ja toiseksi parametriksi leikattavan osamerkkijonon pituuden:

Let hello = "hei maailma. Heippa rauha"; anna bye = hello.substr(12, 4); console.log(hei); // Hei hei

Jos toista parametria ei ole määritetty, rivin loppuosa katkaistaan:

Let hello = "hei maailma. Heippa rauha"; anna bye = hello.substr(12); console.log(hei); // hei rauha

Rekisterinhallinta

Kirjainten vaihtamiseksi on olemassa menetelmiä toLowerCase() (muuntaaksesi pieniä kirjaimia) ja toUpperCase() (muuntaaksesi isoja kirjaimia).

Let hello = "Hei Tom"; console.log(hello.toLowerCase()); // hello Tom console.log(hello.toUpperCase()); // Hei TOM

Symbolin saaminen indeksillä

Jos haluat saada tietyn merkin merkkijonoon indeksin perusteella, voit käyttää charAt()- ja charCodeAt()-menetelmiä. Molemmat menetelmät ottavat merkkiindeksin parametrina:

Let hello = "Hei Tom"; console.log(hello.charAt(2)); // ja console.log(hello.charCodeAt(2)); // 1080

Mutta jos menetelmä charAt() palauttaa tuloksena itse merkin, charCodeAt()-metodi palauttaa tämän merkin numeerisen koodin.

Välilyöntien poistaminen

Poistaaksesi alku- ja loppuvälit merkkijonosta, käytä trim()-menetelmää:

Let hello = "Hei Tom"; anna ennenPituus = hello.length; hello = hello.trim(); anna afterLength = hello.length; console.log("Rivin pituus: ", ennenPituus); // 15 console.log("Rivin pituus jälkeen: ", afterLength); // 10

Merkkijonojen ketjuttaminen

Concat()-metodi yhdistää kaksi merkkijonoa:

Let hello = "Hei"; anna maailman = "maailma"; hello = hei.concat(maailma); console.log(hei); // Hei maailma

Alimerkkijonon vaihto

Replace()-menetelmä korvaa alimerkkijonon ensimmäisen esiintymän toisella:

Let hello = "Hyvää päivää"; hei = hei.replace("päivä", "ilta"); console.log(hei); // Hyvää iltaa

Menetelmän ensimmäinen parametri määrittää, mikä osamerkkijono tulee korvata, ja toinen parametri määrittää, millä osamerkkijonolla korvataan.

Merkkijonojen halkaisu

Split()-menetelmä jakaa merkkijonon alimerkkijonojen joukkoon käyttämällä määritettyä erotinta. Erotin on merkkijono, joka välitetään menetelmälle:

Var message = "Sää oli tänään kaunis"; var stringArray = viesti.split(" "); for(var str in stringArray) console.log(stringArray);

Selaimen tulos

Tänään oli kaunis sää

Rivin alun ja lopun tarkistaminen

Metodi startsWith() palauttaa tosi, jos merkkijono alkaa tietystä osamerkkijonosta. Ja endsWith()-metodi palauttaa tosi, jos merkkijono päättyy tiettyyn osamerkkijonoon.

Anna hei = "anna minun puhua sydämestäni"; console.log(hello.startsWith("antaa")); // true console.log(hello.startsWith("Anna")); // false console.log(hello.startsWith("lets")); // false console.log(hello.endsWith("sydän")); // true console.log(hello.startsWith("bart")); // väärä

Tapauksella on tässä rooli, ja yllä olevasta esimerkistä voimme nähdä, että "let" ei vastaa sanaa "Let".

Toisen lisäparametrin avulla voit määrittää indeksin (startsWith - indeksi alusta ja endsWith - indeksi merkkijonon lopusta), johon vertailu tehdään:

Anna hei = "anna minun puhua sydämestäni"; console.log(hello.startsWith("minä", 4)); // true, "me" - 4. indeksi rivin alusta console.log(hello.startsWith("my", hello.length-8)); // totta, "minun" - 8. indeksi lopusta