Kuinka käyttää jokaisen sanan ensimmäistä kirjainta JavaScriptissä - JS-isojen kirjainten opetusohjelma

Tässä artikkelissa aiot oppia käyttämään minkä tahansa JavaScriptin sanan alkukirjainta. Sen jälkeen kirjoitat isolla lauseen kaikkien sanojen ensimmäisen kirjaimen.

Ohjelmoinnin kaunis puoli on, että ongelman ratkaisemiseksi ei ole olemassa yhtä universaalia ratkaisua. Siksi tässä artikkelissa aiot nähdä useita tapoja ratkaista sama ongelma.

Isojen kirjainten käyttö isolla kirjaimella

Ensinnäkin, aloitetaan yhden sanan ensimmäisen kirjaimen isolla kirjaimella. Kun olet oppinut tekemään tämän, siirrymme seuraavalle tasolle - teemme sen jokaisella lauseen sanalla. Tässä on esimerkki:

const publication = "freeCodeCamp"; 

JavaScriptissä aloitamme laskemisen nollasta 0. Esimerkiksi, jos meillä on matriisi, ensimmäinen sijainti on 0, ei 1.

Voimme myös käyttää kutakin merkkijonon kirjainta samalla tavalla kuin elementtiä matriisista. Esimerkiksi sanan " freeCodeCamp " ensimmäinen kirjain on kohdassa 0.

Tämä tarkoittaa, että voimme saada kirjeen f välillä freeCodeCamp tekemällä publication[0].

Samalla tavalla voit käyttää muita kirjaimia sanasta. Voit korvata "0" millä tahansa numerolla, kunhan sanan pituus ei ylitä. Sanan pituuden publication[25ylittämisellä tarkoitan yrittää tehdä jotain sellaista , mikä heittää virheen, koska sanassa "freeCodeCamp" on vain kaksitoista kirjainta.

Ensimmäisen kirjaimen isojen kirjainten käyttö

Nyt kun tiedämme kuinka päästä kirjaimeen sanasta, isot kirjaimet.

JavaScriptissä meillä on menetelmä nimeltä toUpperCase(), jota voimme kutsua merkkijonoiksi tai sanoiksi. Kuten nimestä voidaan päätellä, kutsut sitä merkkijonoksi / sanaksi, ja se palauttaa saman asian, mutta isoin kirjaimin.

Esimerkiksi:

const publication = "freeCodeCamp"; publication[0].toUpperCase(); 

Suorittamalla yllä oleva koodi saat ison F : n f: n sijasta. Saadaksemme koko sanan takaisin voimme tehdä tämän:

const publication = "freeCodeCamp"; publication[0].toUpperCase() + publication.substring(1); 

Nyt se yhdistää "F": n "reeCodeCamp": llä, mikä tarkoittaa, että saamme takaisin sanan "FreeCodeCamp". Siinä kaikki!

Tehdään uudelleen

Varmistaaksemme, että asiat ovat selvät, toistetaan toistaiseksi oppimamme:

  • JavaScriptissä laskenta alkaa nollasta.
  • Voimme käyttää kirjainta merkkijonosta samalla tavalla kuin elementtiä matriisista - esim string[index].
  • Älä käytä hakemistoa, joka ylittää merkkijonon pituuden (käytä pituusmetodia - string.length- löytääksesi alue, jota voit käyttää).
  • Käytä sisäänrakennettua menetelmää toUpperCase()kirjaimella, jonka haluat muuttaa isoksi.

Isojen kirjainten merkkijono jokaisen sanan alkukirjaimella

Seuraava askel on ottaa lause ja käyttää isoja kirjaimia sanasta. Otetaan seuraava lause:

const mySentence = "freeCodeCamp is an awesome resource"; 

Jaa se sanoiksi

Meidän on isot kirjaimet jokaisesta sanan sanasta freeCodeCamp is an awesome resource.

Ensimmäinen askel on jakaa lause lausejoukoksi. Miksi? Joten voimme manipuloida kutakin sanaa erikseen. Voimme tehdä sen seuraavasti:

const mySentence = "freeCodeCamp is an awesome resource"; const words = mySentence.split(" "); 

Toista jokaisen sanan yli

Kun olemme suorittaneet yllä olevan koodin, muuttujalle wordsannetaan taulukon jokaisen lauseen sanan kanssa. Matriisi on seuraava ["freeCodeCamp", "is", "an", "awesome", "resource"].

const mySentence = "freeCodeCamp is an awesome resource"; const words = mySentence.split(" "); for (let i = 0; i < words.length; i++) { words[i] = words[i][0].toUpperCase() + words[i].substr(1); } 

Seuraava askel on silmukata sanaryhmän yli ja kirjoittaa jokaisen sanan ensimmäinen kirjain isoksi.

Yllä olevassa koodissa jokainen sana otetaan erikseen. Sitten se lisää ison kirjaimen isolla kirjaimella, ja lopulta se yhdistää ison kirjaimen muuhun merkkijonoon.

Liitä sanat

Mitä yllä oleva koodi tekee? Se toistaa jokaisen sanan ja korvaa sen ensimmäisen kirjaimen isoilla kirjaimilla + merkkijonon lopulla.

Jos otamme esimerkin "freeCodeCamp", se näyttää tältä freeCodeCamp = F + reeCodeCamp.

Sen jälkeen, kun kaikki sanat on toistettu, wordstaulukko on ["FreeCodeCamp", "Is", "An", "Awesome", "Resource"]. Meillä on kuitenkin taulukko, ei merkkijono, jota emme halua.

Viimeinen vaihe on liittää kaikki sanat lauseen muodostamiseksi. Joten miten voimme tehdä sen?

JavaScriptissä meillä on menetelmä nimeltä join, jolla voimme palauttaa matriisin merkkijonona. Menetelmä käyttää erotinta argumenttina. Eli määritämme, mitä sanojen väliin lisätään, esimerkiksi välilyönti.

const mySentence = "freeCodeCamp is an awesome resource"; const words = mySentence.split(" "); for (let i = 0; i < words.length; i++) { words[i] = words[i][0].toUpperCase() + words[i].substr(1); } words.join(" "); 

Yllä olevassa koodinpätkässä voimme nähdä yhdistämistavan toiminnassa. Kutsumme sitä wordstaulukossa ja määritämme erottimen, joka meidän tapauksessamme on välilyönti.

Siksi ["FreeCodeCamp", "Is", "An", "Awesome", "Resource"]tulee FreeCodeCamp Is An Awesome Resource.

Muut menetelmät

Ohjelmoinnissa on yleensä useita tapoja ratkaista sama ongelma. Joten katsotaan toinen lähestymistapa.

const mySentence = "freeCodeCamp is an awesome resource"; const words = mySentence.split(" "); words.map((word) => { return word[0].toUpperCase() + word.substring(1); }).join(" "); 

What is the difference between the above solution and the initial solution? The two solutions are very similar, the difference being that in the second solution we are using the map function, whereas in the first solution we used a for loop.

Let's go even further, and try to do a one-liner. Be aware! One line solutions might look cool, but in the real world they are rarely used because it is challenging to understand them. Code readability always comes first.

const mySentence = "freeCodeCamp is an awesome resource"; const finalSentence = mySentence.replace(/(^\w{1})|(\s+\w{1})/g, letter => letter.toUpperCase()); 

The above code uses RegEx to transform the letters. The RegEx might look confusing, so let me explain what happens:

  • ^ matches the beginning of the string.
  • \w matches any word character.
  • {1} takes only the first character.
  • Thus, ^\w{1} matches the first letter of the word.
  • | works like the boolean OR. It matches the expression after and before the |.
  • \s+ matches any amount of whitespace between the words (for example spaces, tabs, or line breaks).

Thus, with one line, we accomplished the same thing we accomplished in the above solutions. If you want to play around with the RegEx and to learn more, you can use this website.

Conclusion

Congratulations, you learnt a new thing today! To recap, in this article, you learnt how to:

  • access the characters from a string
  • capitalize the first letter of a word
  • split a string in an array of words
  • join back the words from an array to form a string
  • use RegEx to accomplish the same task

Jos pidät siitä, mitä kirjoitan, on todennäköistä, että rakastat sitä, mitä lähetän sähköpostilla. Harkitse postituslistani tilaamista. Jos et ole uutiskirjeiden fani , voimme aina pitää yhteyttä Twitterissä .