Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

แยก First Name และ Last Name จากชื่อเต็มใน JavaScript ด้วย split()

ใช้ 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' }