Как сделать первую букву строки заглавной в JavaScript?

У меня такое же, потому что в httpd.conf в apache PHPIniDir D:/wamp/bin/php/php5.5.12 это неверно

3486
задан B. Go 5 April 2019 в 18:29
поделиться

5 ответов

function capitalizeFirstLetter(string) {
    return string.charAt(0).toUpperCase() + string.slice(1);
}

Некоторые другие ответы изменяют String.prototype (этот ответ тоже использовался), но я бы посоветовал этого не делать сейчас из-за ремонтопригодности (трудно понять, где функция добавляется к прототипу и может вызвать конфликты, если другой код использует то же имя / браузер добавит встроенную функцию с тем же именем в будущем).

5531
ответ дан 17 December 2019 в 16:00
поделиться

Вот более объектно-ориентированный подход:

String.prototype.capitalize = function() {
    return this.charAt(0).toUpperCase() + this.slice(1);
}

Вы вызовете функцию, например, так:

"hello world".capitalize();

С ожидаемым результатом:

"Hello world" 
1315
ответ дан 17 December 2019 в 16:00
поделиться

Вот функция с именем ucfirst () (сокращение от «первая буква в верхнем регистре»):

function ucfirst(str) {
    var firstLetter = str.substr(0, 1);
    return firstLetter.toUpperCase() + str.substr(1);
}

Вы можете использовать строку с заглавной буквы, вызвав ucfirst ("some string") - например,

ucfirst("this is a test") --> "This is a test"

Он работает путем разделения строки на две части. В первой строке он извлекает firstLetter , а затем во второй строке использует заглавную букву firstLetter , вызывая firstLetter.toUpperCase () , и присоединяет его к остальной части строка который можно найти, вызвав str.substr (1) .

Вы можете подумать, что это не сработает для пустой строки, и действительно, в таком языке, как C, вам придется это учитывать. Однако в JavaScript, когда вы берете подстроку пустой строки, вы просто получаете обратно пустую строку.

31
ответ дан 17 December 2019 в 16:00
поделиться

Функция ucfirst работает, если вы сделаете это так.

function ucfirst(str) {
    var firstLetter = str.slice(0,1);
    return firstLetter.toUpperCase() + str.substring(1);
}

Спасибо, JP за одобрение.

19
ответ дан 17 December 2019 в 16:00
поделиться

попробуйте это:

String.prototype.capFirstLetter = function () {
    return this.toUpperCase() + this.slice(1);
}
alert("the quick brown fox jumped over the lazy dog.".capFirstLetter());
    //The quick brown fox jumped over the lazy dog.
1
ответ дан 17 December 2019 в 16:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: