5172 Stimmen

Wie wird der erste Buchstabe einer Zeichenkette in JavaScript großgeschrieben?

Wie kann ich den ersten Buchstaben einer Zeichenkette in Großbuchstaben umwandeln, ohne die Großschreibung der anderen Buchstaben zu ändern?

Zum Beispiel:

  • "this is a test" "This is a test"
  • "the Eiffel Tower" "The Eiffel Tower"
  • "/index.html" "/index.html"

51voto

Kamil Kiełczewski Punkte 69048

KÜRZESTE 3 Lösungen, 1 und 2 behandeln Fälle, in denen s Zeichenfolge ist "" , null y undefined :

 s&&s[0].toUpperCase()+s.slice(1)        // 32 char

 s&&s.replace(/./,s[0].toUpperCase())    // 36 char - using regexp

'foo'.replace(/./,x=>x.toUpperCase())    // 31 char - direct on string, ES6

let s='foo bar';

console.log( s&&s[0].toUpperCase()+s.slice(1) );

console.log( s&&s.replace(/./,s[0].toUpperCase()) );

console.log( 'foo bar'.replace(/./,x=>x.toUpperCase()) );

51voto

yckart Punkte 29968

Wir könnten die erste Figur mit einer meiner Lieblingsfiguren bekommen RegExp Sieht aus wie ein süßer Smiley: /^./

String.prototype.capitalize = function () {
  return this.replace(/^./, function (match) {
    return match.toUpperCase();
  });
};

Und für alle Kaffee-Junkies:

String::capitalize = ->
  @replace /^./, (match) ->
    match.toUpperCase()

...und für alle, die denken, dass es einen besseren Weg gibt, dies zu tun, ohne native Prototypen zu erweitern:

var capitalize = function (input) {
  return input.replace(/^./, function (match) {
    return match.toUpperCase();
  });
};

49voto

Ryan Punkte 1117

Wenn Sie mit der Großschreibung des ersten Buchstabens eines jeden Wortes einverstanden sind und Ihr Anwendungsfall in HTML ist, können Sie das folgende CSS verwenden:

<style type="text/css">
    p.capitalize {text-transform:capitalize;}
</style>
<p class="capitalize">This is some text.</p>

Dies ist von _CSS text-transform Eigenschaft_ (bei W3Schulen ).

49voto

AMIC MING Punkte 6190

使用する。

var str = "ruby java";

console.log(str.charAt(0).toUpperCase() + str.substring(1));

Es wird ausgegeben "Ruby java" an die Konsole.

48voto

andersh Punkte 7439

Wenn Sie Underscore.js o Lodash die unterstrich.string Bibliothek bietet Zeichenkettenerweiterungen, einschließlich capitalize:

_.capitalize(string) Konvertiert den ersten Buchstaben der Zeichenkette in Großbuchstaben.

Exemple :

_.capitalize("foo bar") == "Foo bar"

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X