ใช้ split(' ') แยกชื่อด้วยช่องว่าง
สมมติชื่อเป็น "FirstName LastName" แยกด้วยช่องว่าง ได้อาร์เรย์ 2 ตัว
ตัวอย่างโค้ด
var studentFullName = "John Smith";
var details = studentFullName.split(' ');
console.log("StudentFirstName = " + details[0]); // John
console.log("StudentLastName = " + details[1]); // Smith
วิธีรัน
node fileName.js
ผลลัพธ์
StudentFirstName = John
StudentLastName = Smith
คำอธิบาย
split(' ')แยกสตริงด้วยช่องว่าง คืนอาร์เรย์details[0]= First Name,details[1]= Last Name
⚠️ ข้อจำกัดและการปรับปรุง
- ชื่อที่มี middle name: "John Michael Smith" → split ได้ 3 ส่วน
- ชื่อที่มีคำนำหน้า: "Dr. John Smith"
- ชื่อไทย: "สมชาย ใจดี" (อาจมีช่องว่างหลายที่)
ฟังก์ชันที่แข็งแกร่งกว่า
function splitName(fullName) {
const parts = fullName.trim().split(/\s+/); // แยกหลายช่องว่าง
return {
firstName: parts[0],
lastName: parts.slice(1).join(' '), // ส่วนที่เหลือรวมเป็น lastName
middleName: parts.length > 2 ? parts.slice(1, -1).join(' ') : ''
};
}
console.log(splitName("John Michael Smith"));
// { firstName: 'John', middleName: 'Michael', lastName: 'Smith' }