Введение
В английском языке очень важно писать первую букву предложения с заглавной буквы. В JavaScript есть встроенные методы, помогающие нам в этом.
В этой статье мы рассмотрим три различных способа проверить, является ли первая буква строки заглавной, и как ее написать.
Проверка первой буквы в верхнем регистре в JavaScript
Мы можем проверить, является ли первая буква строки заглавной, несколькими способами. Давайте рассмотрим несколько популярных.
toUpperCase()
Это встроенный строковый метод, который возвращает вызванную строку, содержащую только символы верхнего регистра:
function startsWithCapital(word){ return word.charAt(0) === word.charAt(0).toUpperCase() } console.log(startsWithCapital("Hello")) // true console.log(startsWithCapital("hello")) // false
Здесь мы создаем односимвольную строку, состоящую только из первой буквы/символа предоставленной строки, и сравниваем ее с версией в верхнем регистре. Если они совпадают, то исходная буква становится прописной.
Примечание: string.charAt(index) предпочтительнее, чем string[index] (скобочная нотация). Это связано с тем, что “”.charAt(0) возвращает пустую строку, тогда как “”[0] возвращает неопределенное значение.
Это устраняет необходимость проверять, является ли переменная неопределенной, и позволяет избежать исключительных состояний в вашем коде.
charCodeAt()
Каждый символ строки представлен уникальным числом с использованием кодировки UTF-16. Для английских заглавных букв: A = 65 и Z = 90. Если код символа первой буквы попадает в этот диапазон, мы знаем, что она заглавная:
function startsWithCapital(word){ return word.charCodeAt(0) >= 65 && word.charCodeAt(0) <= 90 } console.log(startsWithCapital("This is working!")) // true console.log(startsWithCapital("checking!")) // false
test()
В качестве альтернативы мы можем проверить совпадение регулярного выражения и заданной строки. Этого легко добиться с помощью функции test().
Давайте рассмотрим пример:
function startsWithCapital(word){ return /[A-Z]/.test(word.charAt(0)) } console.log(startsWithCapital("Capital letters")) // true console.log(startsWithCapital("is this true?")) // false
Здесь /[A-Z]/ представляет все заглавные английские буквы (от A до Z). Мы проверяем, совпадает ли первая буква строки с любой из них.
Капитализация первой буквы
Если мы выяснили, что первая буква строки строчная, и если мы хотим написать ее заглавной, мы можем сделать это следующим способом:
function capitalizeFirstLetter(word){ return word.charAt(0).toUpperCase() + word.slice(1) } console.log(capitalize("hello world!")) // Hello world
Здесь мы берем первый символ и преобразуем его в верхний регистр. Затем мы конкатенируем остальную часть строки к этой заглавной букве. Это делается с помощью функции slice(), где мы указали начальный индекс 1. Поскольку он основан на 0, мы пропустили первую букву.
Заключение
В этой статье мы рассмотрели несколько способов проверки того, является ли первая буква строки заглавной, а также способы выделения первой буквы строки заглавными буквами.
Оригинал: “https://stackabuse.com/javascript-check-if-first-letter-of-a-string-is-upper-case/”