JavaScript에서 문장의 제목을 지정하는 방법
2495 단어 javascripttutorial
제목 케이스는 무엇입니까
언뜻 보면 제목 줄에 있는 모든 단어의 첫 글자는 대문자로, 나머지 단어는 소문자로 만들고 싶었던 것처럼 들릴 수 있습니다.
거의 맞습니다. 특정 단어가 대문자로 표시되는 것을 원하지 않습니다.
a
, an
또는 and
와 같은 단어는 소문자로 유지하려고 했습니다.다음은 이 전환을 처리하기 위해 제가 만든 빠른 함수입니다.
먼저 이메일 제목에 소문자로 남기를 원하는 단어 배열을 만들었습니다.
const small_words = ['a', 'an', 'and', 'as', 'at', 'but', 'by', 'for', 'if', 'in', 'into', 'nor', 'of', 'on', 'or', 'out', 'so', 'the', 'to', 'up', 'yet', 'and', 'as', 'at', 'but', 'by', 'for', 'if', 'in', 'into', 'nor', 'of', 'on', 'or', 'out', 'so', 'the', 'to', 'up', 'yet'];
다음으로 제목 줄의 텍스트를 전달하는 함수를 만들었습니다. 이 문자열을 배열의 항목인 주제의 각 단어가 있는 배열로 나눕니다. 이제 배열이 있으므로 모든 단어를 반복할 수 있습니다. 단어가
small_words
배열의 항목과 일치하면 소문자로 변환합니다. 그렇지 않으면 단어의 첫 번째 문자를 대문자로 표시하고 나머지는 소문자로 표시합니다.내가 설명해야 하는 한 가지 예외가 있는데 그것은 주제 텍스트의 첫 글자입니다. 첫 단어가 무엇이든 관계없이 첫 글자를 대문자로 표시하고 싶습니다.
이러한 요구 사항에 따라 내 기능은 다음과 같습니다.
const titleize = (title) => {
return title.split(' ').map((word, index) => {
if (index !== 0 && small_words.includes(word)) {
return word.toLowerCase();
} else {
return word[0].toUpperCase() + word.slice(1).toLowerCase();
}
}).join(' ');
}
기능을 테스트하기 위해 3개의 제목을 추가하고 console.log에 새 제목을 추가했습니다.
console.log(titleize('notes on a scandal')); // Notes on a Scandal
console.log(titleize('a good man is hard to find')); // A Good Man Is Hard to Find
console.log(titleize('midnight in the garden of good and evil')); // Midnight in the Garden of Good and Evil
제목 줄의 각 테스트에 대한 출력을 볼 수 있습니다.
인쇄 제목 서식을 기반으로 문자열에 제목을 지정해야 하는 경우 이 기능을 사용할 수 있습니다. 소문자로 유지하려면 단어 목록을 포함하도록
small_words
배열을 편집하기만 하면 됩니다.
Reference
이 문제에 관하여(JavaScript에서 문장의 제목을 지정하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ratracegrad/how-to-titleize-a-sentence-in-javascript-1nla텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)