Ваше мнение важно для нас.
Поделитесь своими предоложениями и пожеланиями.

Заглавная первая буква в строке на JavaScript


Как мне сделать заглавной первую букву строки, при этом не меняя регистр всех остальных букв? Например:

это тест -> Это тест

Большие буквы остаются большими -> Большие буквы остаются большими

/index.html -> /index.html
2

Ответы

0
Ссылка
Для этого наверняка есть какой-то jQuery плагин...
1
Ссылка
Есть такой вариант:
function capitaliseFirstLetter(string)
{
return string.charAt(0).toUpperCase() + string.slice(1);
}
0
Ссылка
+1 за читаемость. Для такой простой цели не нужно искать сложные решения.
0
Ссылка
Хм.., у меня ошибка при использовании функции slice. Поменял на substr. Может быть дело было в чем-то другом, но после этого стало работать нормально.
0
Ссылка
substring работает в большем количестве браузеров
2
Ссылка
Вот более объектно-ориентированный вариант:

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


Работает так:

"hello world".capitalize();  =>  "Hello world" 
0
Ссылка
+2 за читаемость и удобство применения.
0
Ссылка
Вообще, изменение прототипа нативного объекта - плохая практика.
2
Ссылка
Мне кажется проще сделать с помощью CSS...

<style type="text/css">
p.capitalize {text-transform:capitalize;}
</style>
<p class="capitalize">какой-то текст.</p>


подробнее можно прочитать тут.
0
Ссылка
+1 супер. Отличная мысль, почему бы не дать браузеру сделать все самому.
0
Ссылка
На самом деле, совершенно не обязательно, что строка в конечном итоге попадет в HTML-документ, а если не попадет, то CSS тут не поможет.
0
Ссылка
Это, конечно, верно. Но 90% всего JavaScript'а в конечном итоге, направлены на изменение HTML. К сожалению, css правило "capitalize" приводит к тому, что каждое слово становится с большой буквы. Так что JS все равно понадобится, чтобы сделать только первое слово с большой буквы.
1
Ссылка
Если нужно только первую букву во всей строке, можно использовать:
p:first-letter {
text-transform:capitalize;
}
Для того, чтоб отвечать на вопросы или зарегистрируйтесь.
ИТ-цитата
"Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы."
Annonimus