Không sử dụng sugar.js - nó đổi nguyên mẫu mẹ đẻ vì vậy mọi thứ sẽ sử dụng chúng - không chỉ mô-đun của bạn. Làm điều này là vô cùng xảo quyệt, nó không mô-đun, và nó sẽ cắn bạn trong ass khi bạn ít mong đợi nó.
Giá trị của nó nói lại lần nữa: không sử dụng bất kỳ mô-đun nào sửa đổi nguyên mẫu gốc bên ngoài ngữ cảnh polyfilling (rất hợp lý). Không sử dụng Sugar.js. Đặc biệt trong node.js - có một hệ thống mô-đun ở đó vì một lý do. Cá nhân tôi đã gặp phải những vấn đề khủng khiếp với những thứ làm thay đổi nguyên mẫu gốc. Những điều kỳ lạ có thể xảy ra sâu trong ruột của mã của bạn.
Dưới đây là một số chi tiết thông tin về lý do tại sao thay đổi đối tượng có nguồn gốc là xấu:
http://www.nczonline.net/blog/2010/03/02/maintainable-javascript-dont-modify-objects-you-down-own/
UPDATE: Có vẻ như Đường v2.0.0 nay đối xử với người bản địa mở rộng như opt-in, mà là tốt hơn nhiều (vì người bản xứ không được mở rộng theo mặc định).
Nguồn
2015-04-22 03:36:57
Bản trình diễn hay. Giờ thì tôi đã hiểu. – jiyinyiyong
Có bất kỳ điểm nào trong việc ấn định giá trị trả về của 'require ('sugar')' cho một biến không? – callum
@callum Nope 'require ('sugar')' trả về một đối tượng trống. Viết phần 'var sugar =' là vô dụng. –