var shell = function (method) {
window[method].apply(null, Array.prototype.slice.call(arguments, 1));
};
shell('alert', 'monkey!');
Trả lời
alert.apply là sự cố. Cảnh báo không phải là một phần của ngôn ngữ, vì vậy nó có thể không phải là một chức năng. Đó là phụ thuộc thực hiện.
Quyền - IE phơi bày các API trên 'cửa sổ' và trên các phần tử DOM đối với Javascript, nhưng việc tiếp xúc bị hạn chế và bạn thường không thể xử lý những thứ như thể chúng là các thành phần Javascript" thực ". – Pointy
+1 đồng ý với galambalaz. – Krunal
Điểm tốt, nhưng sau đó không nên làm việc này: var shell = function (phương pháp) { var fn = window [method]; fn.apply = Function.prototype.apply; fn.apply (null, Array.prototype.slice.call (đối số, 1)); }; vỏ ('cảnh báo', 'khỉ!'); – shawndumas
- 1. Tại sao công cụ jQuery AJAX PUT này hoạt động trong Chrome chứ không phải FF
- 2. html5 drawImage hoạt động trong firefox, chứ không phải chrome
- 3. Tại sao mã này không hoạt động trên IE 8?
- 4. Tại sao mã này hoạt động trong Clang ++ chứ không phải G ++?
- 5. Tại sao tính năng này không hoạt động? Năng động trong một Chọn
- 6. Tại sao tính năng này hoạt động (Mẫu, SFINAE). C++
- 7. Hoạt ảnh CSS: Hoạt động trong Chrome chứ không phải trong Firefox?
- 8. Tại sao yêu cầu miền chéo này hoạt động trong các trình duyệt khác chứ không phải IE9?
- 9. Tại sao TypeConverter này không hoạt động?
- 10. Tại sao colgroup/col không hoạt động trong Chrome
- 11. Tại sao Ajax.BeginForm không hoạt động trong Chrome?
- 12. Tại sao getResourceAsStream() hoạt động trong IDE chứ không phải JAR?
- 13. Trình diễn JQuery của tôi() hoạt động trong IE chứ không phải FF?
- 14. Tại sao tính năng này hoạt động? Tham khảo đối tượng trong Javascript
- 15. Ghép mẫu Haskell trên dây - Tại sao tính năng này không hoạt động?
- 16. Phím tắt WPF - Tại sao tính năng này không hoạt động?
- 17. Trình tải tự động của php: tại sao tính năng này hoạt động?
- 18. Tại sao RewriteRule này không hoạt động?
- 19. Tại sao unbind này không hoạt động?
- 20. Tại sao Catransition này không hoạt động?
- 21. Tại sao ngắt lời tuyên bố này không hoạt động?
- 22. Tại sao JavaScript này hoạt động?
- 23. Tại sao lề phải không hoạt động?
- 24. Chức năng tách JavaScript không hoạt động trong IE
- 25. Tại sao regex javascript này không hoạt động?
- 26. onbeforeprint và onafterprint không hoạt động trong Chrome và IE?
- 27. Tại sao sử dụng argparse chứ không phải là optparse?
- 28. Tại sao tính năng này hoạt động? Vô lý truy cập mảng
- 29. Tại sao "KHÔNG IN" không hoạt động trong NSPredicate này?
- 30. Tại sao tính năng này hoạt động? (Php ký hiệu dấu chấm)
vì IE là ác – Jimmy
Xem câu trả lời cho câu hỏi này: http://stackoverflow.com/questions/120804/difference-between-array-slice-and-array-slice –
no, Array.prototype.slice.call (đối số, 1) là ok. – galambalazs