2015-02-05 36 views

Trả lời

187

Kể từ phiên bản v4.x bạn nên sử dụng _.map:

_.map(users, 'id'); // [12, 14, 16, 18] 

cách này nó được tương ứng với phương pháp tự nhiên Array.prototype.map nơi bạn sẽ viết (cú pháp ES2015):

users.map(user => user.id); // [12, 14, 16, 18] 

Trước v4.x bạn có thể sử dụng _.pluck cùng một cách:

_.pluck(users, 'id'); // [12, 14, 16, 18] 
+0

cảm ơn tốt hơn '' '_.toArray (_. MapValues ​​(người dùng, 'id'))' '' – YarGnawh

+0

Đây là các tài liệu cho cùng một https://lodash.com/docs#map –

+0

cách tôi có thể nhận được tên với id, tôi có nghĩa là làm thế nào chúng ta có thể lấy nhiều hơn hai giá trị? – John

-10

Điều này sẽ cung cấp cho bạn những gì bạn muốn trong cửa sổ bật lên.

for(var i = 0; i < users.Count; i++){ 
    alert(users[i].id); 
} 
+1

Nó lặp qua mảng một phần tử tại một thời điểm. Một mảng là một cấu trúc dữ liệu của các chỉ mục với các giá trị trong nó từ một số kiểu dữ liệu (trong ví dụ này là các đối tượng). Các đối tượng chỉ có thể được truy cập bằng cách đánh giá các phần tử trong chỉ mục của mảng. Vòng lặp là cấu trúc đạt được điều này. – user1789573

12

Với JS tinh khiết:

var userIds = users.map(function(obj) { return obj.id; }); 
10

Trong lodash mới phát hành v4.0.0_.pluck đã loại bỏ ủng hộ _.map

Sau đó, bạn có thể sử dụng này:

_.map(users, 'id'); // [12, 14, 16, 18] 

Bạn có thể xem trong Github Changelog

Các vấn đề liên quan