วิธีใช้อักษรตัวพิมพ์ใหญ่ตัวแรกและตัวพิมพ์เล็กส่วนที่เหลือของสตริง
ฉันพยายามใช้อักษรตัวแรกของคำแรกในประโยคเป็นตัวพิมพ์ใหญ่
นี่คือข้อมูลในไฟล์ tsx {this.text ({id downloadPriceHistory
:, defaultMessage: 'Download Price History'})} id ที่แสดงด้านบนมาจากฐานข้อมูลที่สามารถส่งไปยัง api ในรูปแบบต่างๆ
ฉันได้ลองใช้ตรรกะด้านล่างนี้แล้ว:
export function titleCase(string) {
string = 'hello World';
const sentence = string.toLowerCase().split('');
for (let i = 0; i < sentence.length; i++) {
sentence[i] = sentence[i][0].toUpperCase() + sentence[i];
}
return sentence;
}
ตัวอย่างเช่นสำหรับการป้อนข้อมูลผลที่ควรจะเป็น"Download Price History"
"Download price history"
คำตอบ
คุณจะต้องใช้อักษรตัวแรกเป็นตัวพิมพ์ใหญ่และเชื่อมต่อกับส่วนที่เหลือของสตริงที่แปลงเป็นตัวพิมพ์เล็ก
function titleCase(string){
return string[0].toUpperCase() + string.slice(1).toLowerCase();
}
console.log(titleCase('Download Price History'));
นอกจากนี้ยังสามารถทำได้ด้วย CSS โดยการตั้งค่าtext-transform
การlowercase
สำหรับองค์ประกอบทั้งหมดและใช้::first-letter
องค์ประกอบหลอกเพื่อตั้งค่าการtext-transform
uppercase
.capitalize-first {
text-transform: lowercase;
}
.capitalize-first::first-letter {
text-transform: uppercase;
}
<p class="capitalize-first">Download Price History</p>
ลอง - ทำให้สตริงที่เหลือเป็นตัวพิมพ์เล็กเช่นกัน
export function titleCase(string) {
return string[0].toUpperCase() + string.substr(1).toLowerCase()
}
ทำไมไม่ใช้ตัวพิมพ์เล็กทั้งสตริงและตัวพิมพ์ใหญ่เพียงตัวอักษรตัวแรกของสตริงใหม่
function titleCase(string) {
let sentence = string.toLowerCase();
let titleCaseSentence = sentence.charAt(0).toUpperCase() + sentence.substring(1, sentence.length);
return titleCaseSentence;
}
(นอกจากนี้คุณกำลังลบพารามิเตอร์ของคุณไปยังฟังก์ชันด้วยบรรทัดแรกนั้น)
string = 'hello World';
คำแนะนำของฉันคือคุณได้รับองค์ประกอบแรกของสตริงและใส่ตัวพิมพ์ใหญ่และรับส่วนที่เหลือของสตริงและใช้ฟังก์ชันตัวพิมพ์เล็ก
titleCase(string) {
return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
}
ใช้ CSS:
p {
text-transform: lowercase;
}
p::first-letter {
text-transform: uppercase
}
ใช้ JS:
const capitalize = (s) => s.charAt(0).toUpperCase() + s.slice(1).toLowercase();