Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Chuyển mảng key-value sang object - JavaScript

Viết hàm chuyển mảng chuỗi dạng 'key-value' thành object.

Ví dụ

Đầu vào:

['playerName-Kai Havertz', 'age-21', 'nationality-German', 
 'postion-CAM', 'languages-German,English,Spanish', 'club-Chelsea']

Giải pháp

Mã triển khai:

const arr = [
  "playerName-Kai Havertz", "age-21", "nationality-German",
  "postion-CAM", "languages-German,English,Spanish", "club-Chelsea"
];

const arrayToObject = arr => {
  const obj = {};
  arr.forEach(string => {
    const [key, ...valueParts] = string.split('-');
    obj[key] = valueParts.join('-'); // Ghép lại nếu value chứa '-'
  });
  return obj;
};

console.log(arrayToObject(arr));

Kết quả

Đầu ra trong console:

{
  playerName: 'Kai Havertz',
  age: '21',
  nationality: 'German',
  postion: 'CAM',
  languages: 'German,English,Spanish',
  club: 'Chelsea'
}

Cải tiến: Dùng split('-', 2) hoặc indexOf để tách chỉ ở dấu '-' đầu tiên.