split(), map(), charAt(), toUpperCase(), toLowerCase(), slice() और join() का संयोजन से टाइटल केस (प्रत्येक शब्द का पहला अक्षर बड़ा) में बदलें।
फंक्शन कार्यान्वयन
function capitalizeFirstLetter(str) {
return str
.split(' ') // शब्दों में विभाजित
.map(word => {
if (!word) return ''; // खाली स्ट्रिंग्स संभालें
return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
})
.join(' '); // वापस जोड़ें
}
// उपयोग
const input = "iNtroduction tO JavaScript ProgRAMMINg";
const output = capitalizeFirstLetter(input);
console.log(output); // "Introduction To JavaScript Programming"
एज केस हैंडलिंग
function robustCapitalize(str) {
return str
.trim() // अग्रणी/अनुगामी स्पेस हटाएं
.split(/\s+/) // एकाधिक स्पेस पर विभाजित
.filter(word => word.length > 0) // खाली स्ट्रिंग्स हटाएं
.map(word =>
word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()
)
.join(' ');
}
console.log(robustCapitalize(" hello WORLD ")); // "Hello World"
console.log(robustCapitalize("")); // ""
console.log(robustCapitalize("a")); // "A"
रेगुलर एक्सप्रेशन विकल्प (कॉम्पैक्ट)
function capitalizeRegex(str) {
return str.replace(/\b\w/g, char => char.toUpperCase());
// \b = शब्द सीमा, \w = शब्द कैरेक्टर
}
console.log(capitalizeRegex("hello world")); // "Hello World"
// नोट: यह "javascript" को "Javascript" बनाता है (बाकी लोअरकेस नहीं करता)
पूर्ण टाइटल केस (बाकी लोअरकेस)
function toTitleCase(str) {
return str
.toLowerCase() // पहले सब लोअरकेस
.replace(/\b\w/g, c => c.toUpperCase()); // फिर पहला अक्षर अपरकेस
}
console.log(toTitleCase("iNtroduction tO JavaScript ProgRAMMINg"));
// "Introduction To Javascript Programming" - ध्यान दें: "Javascript" नहीं "JavaScript"
स्मार्ट टाइटल केस (छोटे शब्दों को लोअरकेस रखें)
function smartTitleCase(str) {
const smallWords = new Set(['a', 'an', 'the', 'and', 'but', 'or', 'for', 'nor', 'on', 'at', 'to', 'from', 'by', 'in', 'of']);
return str
.toLowerCase()
.split(' ')
.map((word, index) => {
if (index === 0 || !smallWords.has(word)) {
return word.charAt(0).toUpperCase() + word.slice(1);
}
return word;
})
.join(' ');
}
console.log(smartTitleCase("the lord of the rings"));
// "The Lord of the Rings" (of, the लोअरकेस रहे)
चलाने का तरीका
node capitalize-words.js
आउटपुट
The result=Introduction To JavaScript Programming
तुलना
| इनपुट | map+split | regex replace | toTitleCase |
|---|---|---|---|
| "hello WORLD" | "Hello World" | "Hello WORLD" | "Hello World" |
| "javaSCRIPT" | "Javascript" | "Javascript" | "Javascript" |