Tôi hơi bối rối về cách hoạt động của hàm trong javascript. Tôi hiểu rằng họ là tất cả các đối tượng nhưng làm thế nào mà thay đổi cách tôi sẽ sử dụng chúng làm đối số?Khi nào cần khai báo hàm mới (ẩn danh) trong javascript?
Ví dụ, nếu tôi đang cố gắng sử dụng một hàm callback nơi đối số thứ 2 được đánh giá sau 1000ms ...
$(this).fadeIn(1000,function(){alert('done fading in');});
Tại sao tôi không thể đạt được tác dụng tương tự với:
$(this).fadeIn(1000,alert('done fading in'));
Nếu có, nó sẽ đánh giá cả hai cùng một lúc. Đó là, (điều này) yếu tố mất dần và cảnh báo bật lên cùng một lúc.
Khi tôi gọi cảnh báo (arg), tôi có đang tạo đối tượng mới được chuyển vào fadeIn() không?
Chính xác điều này hoạt động như thế nào?
câu hỏi hay. Tôi sẽ dán xung quanh cho điều này – OptimusCrime
Đối với các nerds ngôn ngữ: Kỹ thuật bạn muốn được gọi là * [partial function application] [1] *, cũng thường được gọi là * Currying *. Bạn có hiệu quả muốn có một chức năng mới, nơi một số đối số được cố định, và những người khác thì không. [1]: http://en.wikipedia.org/wiki/Partial_application –
@nd: Không, đó không phải là thực sự. Không có sự đánh giá một phần nào của currying hoặc đang diễn ra trong ví dụ này. Nếu bạn đang tìm kiếm một thuật ngữ, * chức năng ẩn danh * là nó. Ngoài ra * các hàm bậc cao hơn * cho các hàm có chức năng làm đối số. – KaptajnKold