Javascript Maiuscolo Prima Lettera

| | | | | | | | | | | | | | | | | | | | | | | | | | | | |

Ci sono molte sfide di codice per principianti che ti aiuteranno a iniziare a pensare in modo più simile a un ingegnere. Una di queste sfide è dove metti in maiuscolo la prima lettera di ogni parola in una determinata stringa. In questo articolo, daremo un`occhiata al prompt e a diverse soluzioni possibili in JavaScript.

Data una funzione, capitalizza, che include str come parametro, restituisci quel str con ogni parola in maiuscolo. Prova a pensare ai casi di picco nella tua soluzione (non come input, tipo errato di input, ecc.).

Approccio

  1. Dai un`occhiata di nuovo al prompt. Annota o evidenzia le parole chiave che puoi trovare nella dicitura.
  2. Combina il significato della parola problema. Parte della parte più difficile delle sfide del codice è cercare di capire cosa ti sta chiedendo di fare il problema. Comprendere il problema ti aiuterà a risolverlo.
  3. una possibile soluzione di pseudocodice. Non deve essere il codice effettivo (non deve essere eseguibile nel tuo IDE o nel browser della console - l`inglese semplice va bene):

Risolvi attentamente il problema passo dopo passo. Ti aiuterà a pensare a casi di suggerimenti - casi in cui è possibile che venga passata una voce errata o una stringa vuota - e come suddividere il problema in passaggi logici. Questa è fondamentalmente la tua fase di sperimentazione: non ci sono risposte sbagliate, solo pensieri su come affrontare il problema. Questi pensieri possono essere fuorvianti o fuorvianti: è così che impari gli approcci conquistati per risolvere un problema

Ho scoperto che se riesco a scomporlo spiegando ad alta voce, la logica è più semplice. Il tuo chilometraggio può variare a seconda del tuo approccio, ma volevo almeno suggerirti nel caso funzioni per te! Il soprannome per un piccolo problema come questo sembra un po` eccessivo, ma se metti in pratica il concetto ora ti sarà più facile lavorare su problemi molto più difficili.

Le soluzioni

Soluzione n. 1: split() e loop con i metodi String.replace() e charAt()

leave = capitalize (str) => {= stop leave str.split (``); for (o i = 0; i

In questa prima soluzione, dividiamo la stringa sui suoi spazi. Questo ci dà un arr ogni parola univoca come suo indice. Il loop sull`array ci dà la possibilità di accedere agli indici personali di ogni stringa. Abbiamo riassegnato la stringa (la stringa in questo caso è arr [i]) all`indice i come risultato della sostituzione della stringa all`indice 0 (arr [i] .charAt (0) con il suo valore in maiuscolo. Arr in una stringa con spazi tra ciascuna delle parole

Soluzione n. 2: dividere con il metodo map e slice

In questa soluzione iniziamo in modo molto simile, ma utilizziamo un metodo array ES6 chiamato loop card through the network e il return di nuovi valori ​​che mettono in maiuscolo il primo carattere di ogni parola. Lo fa impostando esplicitamente cosa faremo con toUpperCase() per la prima lettera, slice() per il resto della stringa e le stringhe concatenare per ottenere la nuova versione della parola. Quindi uniamo l`array e lo restituiamo

Soluzione n ° 3: espressioni regolari

allow leverage = (str) => {let regex = / (^ | s) S / g return str.replace (regex, lettera => letter.toUpperCase ()); } Lascia root = document.getElementById ("root"); root.innerHTML = JSON.stringify (in maiuscolo (la rapida volpe marrone è saltata sul cane pigro ‚Äã‚Äã`));

In questa soluzione, utilizziamo un`espressione regolare per trovare tutti i caratteri non bianchi (S) all`inizio della stringa (^ ) o dopo uno o più caratteri spazio. L`indicatore g alla fine significa globale e ci consente di trovare tutte le istanze di questo modello. Quindi utilizziamo il metodo di sostituzione per sostituire quel modello regex con una funzione che prende quella lettera e la restituisce in maiuscolo.

considerazioni finali

Queste soluzioni non sono affatto le uniche soluzioni a questo problema .. Molto probabilmente, quando inizi a fare più di questi, troverai soluzioni che possono o meno essere diverse da quelle presentate da un articolo o da un blog. Questa è una buona cosa. Significa che inizi a pensare come un ingegnere, e questo è il punto.

Continua. In queste soluzioni, i casi di picco non vengono affrontati. Cosa dovresti fare se il tuo soggetto è vuoto o è un numero? Prova ad aggiungere al codice precedente trattando questi casi limite

Suggerimento :. Usa un punto esclamativo per trovare condizionalmente se str esiste. Dai un`occhiata ai documenti MDN per scoprire se c`è un modo per scoprire il tipo di qualcosa quando non sai necessariamente di cosa si tratta.

una cosa : prova reverse javascript challenge strings se non l`hai già fatto

Altre risorse da considerare:

Utilizzo di espressioni regolari in Ruby - Questo è dedicato a Ruby, ma l`espressione regolare è spesso indipendente dalla lingua - veloce ` Cerca ulteriori informazioni sulla sintassi RegExp nella soluzione n. 1. 3.

JavaScript Replace Text: A Step by Step Guide - Un tutorial dedicato al metodo di sostituzione, utilizzato nella soluzione n. 1.