Giả sử, chúng ta có một mảng các đối tượng như thế này -
const arr = [ {id:123, value:"value1", name:"Name1"}, {id:124, value:"value2", name:"Name1"}, {id:125, value:"value3", name:"Name2"}, {id:126, value:"value4", name:"Name2"} ];
Lưu ý rằng một số thuộc tính "name" trong các đối tượng trong mảng là trùng lặp.
Chúng tôi được yêu cầu viết một hàm JavaScript có trong một mảng các đối tượng như vậy. Sau đó, hàm sẽ tạo một mảng chuỗi mới chỉ chứa giá trị thuộc tính "name" duy nhất từ mảng.
Do đó, đầu ra cho đầu vào ở trên sẽ giống như thế này -
const output = ["Name1", "Name2"];
Ví dụ
Mã cho điều này sẽ là -
const arr = [ {id:123, value:"value1", name:"Name1"}, {id:124, value:"value2", name:"Name1"}, {id:125, value:"value3", name:"Name2"}, {id:126, value:"value4", name:"Name2"} ]; const pickNames = (arr = []) =>{ const res = []; for (let i = arr.length; i−−;){ if (res.indexOf(arr[i].name) < 0) { res.push(arr[i].name); }; } return res; }; console.log(pickNames(arr));
Đầu ra
Và đầu ra trong bảng điều khiển sẽ là -
[ 'Name2', 'Name1' ]