Giả sử chúng ta có một mảng các mảng chứa thông tin thành tích của một cầu thủ cricket như sau:
const arr = [ ['Name', 'V Kohli'], ['Matches', 13], ['Runs', 590], ['Highest', 183], ['NO', 3], ['SR', 131.5] ];
Chúng ta cần viết một hàm JavaScript nhận vào một mảng các mảng như vậy. Ở đây, mỗi mảng con đại diện cho một cặp khóa-giá trị, phần tử đầu tiên là khóa và phần tử thứ hai là giá trị. Hàm nên xây dựng một đối tượng dựa trên các cặp khóa-giá trị trong mảng và trả về đối tượng đó.
Do đó, với mảng trên, đầu ra sẽ trông như sau:
const output = { Name: 'V Kohli', Matches: 13, Runs: 590, Highest: 183, NO: 3, SR: 131.5 };Ví dụ
Dưới đây là mã nguồn:
const arr = [ ['Name', 'V Kohli'], ['Matches', 13], ['Runs', 590], ['Highest', 183], ['NO', 3], ['SR', 131.5] ]; const arrayToObject = (arr = []) => { const res = {}; for(pair of arr){ const [key, value] = pair; res[key] = value; }; return res; }; console.log(arrayToObject(arr));Kết quả
Đầu ra trên console:
{ Name: 'V Kohli', Matches: 13, Runs: 590, Highest: 183, NO: 3, SR: 131.5 }