Ah, tôi nghĩ tôi đã nhận ra những ví dụ: http://pragprog.com/magazines/2011-05/a-coffeescript-intervention :)
CoffeeScript của mô hình khớp (hơn chính thức được gọi là "destructuring chuyển nhượng" để phân biệt với mô hình khớp trong Erland và Scala, mà là khá khác nhau) có thể được sử dụng để trích xuất thông tin từ rất cấu trúc dữ liệu phức tạp. Dưới đây là một ví dụ từ official docs:
{poet: {name, address: [street, city]}} = futurists
mà chủ yếu là tương đương với
poet = futurists.poet
name = poet.name
street = poet.address[0]
city = poet.address[1]
Trên thực tế, mặc dù, destructuring chuyển nhượng được sử dụng chủ yếu cho grabbing một hoặc hai thuộc tính đối tượng, như trong ví dụ bạn đề cập đến hoặc để nhận các bộ phận từ một mảng. Ví dụ, bạn có thể trao đổi các giá trị của hai biến a
và b
bằng cách viết
[a, b] = [b, a]
và sử dụng các sọc, bạn có thể lấy giá trị đầu tiên và cuối cùng của một mảng arr
bằng cách viết
[first, middle..., last] = arr
tôi hy vọng rằng sẽ giúp. Có nhiều ví dụ hơn trong sách của tôi, CoffeeScript: Accelerated JavaScript Development.
Nguồn
2011-09-16 20:06:43