JavaScript เปลี่ยนตัวพิมพ์ใหญ่ให้กับอักษรตัวแรกเหมือน ucfirst() ของ PHP

โดย SONGCHAI SAETERN

JavaScript กับการกำหนดตัวแรกเป็นตัวพิมพ์ใหญ่

สร้างฟังก์ชั่น JavaScript เพื่อทำให้ตัวแรกเป็นตัวพิมพ์ใหญ่

function jsUcfirst(string)  { 
    return string.charAt(0).toUpperCase() + string.slice(1);
}

วิธีการเรียกใช้งาน

<input name="controller_name" onchange="this.value=jsUcfirst(this.value)" />
โค้ดด้านบนนี้จะทำงานเมื่อเกิดการเปลี่ยนแปลงข้อมูลในช่องกรอกข้อมูลที่ชื่อ controller_name จะเรียก onchage ขึ้นมาทำงาน this.value=jsUcfirst(this.value) คือคำสั่ง JavaScript ที่กำหนดให้ค่า value ของช่องกรอกข้อมูลตัวนี้ มีค่าเท่ากับค่าที่เปลี่ยนตัวแรก เป็นตัวพิมพ์ใหญ่ไปแล้ว


มาดูกันทีละขั้นตอนว่าเกิดอะไรขึ้นบ้างในฟังก์ชั่นนี้

เราจะสามารถแยกออกได้ 3 เหตุการณ์ด้วยกัน คือ
เหตุการณ์ที่ 1 => string.charAt(0)
เหตุการณ์ที่ 2 => .toUpperCase()
เหตุการณ์ที่ 3 => + string.slice(1);

สมมติว่าเราส่งคำว่า members เข้าไปในฟังก์ชั่น jsUcfirst()

string.charAt(0) จะทำการตัดอักษรตัวแรกออกมาจาก string จะได้คำว่า m ออกมา
.toUpperCase() จะทำงานต่อทันทีหลังจากได้ตัว m มาแล้ว "m".toUpperCase() ก็จะได้ M
+ string.slice(1) คือ บวกข้อความใน string ที่ได้ตัดตัวแรกออกแล้วเข้าไป จะได้ "embers"

ดังนั้นเมื่อนำทั้ง 3 เหตุการณ์มารวมกัน ก็จะได้เป็น

string.charAt(0).toUpperCase() + string.slice(1);

m => M + ember   =  Members


แหล่งอ้างอิง
How do I make the first letter of a string uppercase in JavaScript
https://stackoverflow.com/questions/1026069/how-do-i-make-the-first-letter-of-a-string-uppercase-in-javascript

How To Capitalize The First Letter Of A String In JavaScript
https://paulund.co.uk/how-to-capitalize-the-first-letter-of-a-string-in-javascript



PHP CI MANIA PHP Code Generator 
โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม เขียนโปรแกรมง่ายและสะดวกขึ้น
สนใจสั่งซื้อราคาสุดคุ้ม >> http://fastcoding.phpcodemania.com/