Một trong những vấn đề, đối với một số người trong chúng ta, với Javascript là việc thiếu toán tử quá tải. Điều này làm cho việc viết thư viện số khó xử. Ví dụ: chúng tôi có thể muốn viết một cái gì đó như:Thực hiện quá tải toán tử trong Javascript thông qua một transpiler
var a = new BigInteger(5);
var b = new BigInteger(10);
var c = a + b;
Một giải pháp có thể là chuyển đổi ngôn ngữ với quá tải nhà điều hành sang Javascript. Trong khi khả thi - bằng cách thay thế các toán tử bằng các cuộc gọi hàm và kiểm tra kiểu - sự đồng thuận dường như là điều này là không thể mà không giết chết hiệu suất. CoffeeScript đã bác bỏ ý tưởng vì lý do này:
https://github.com/jashkenas/coffee-script/issues/846
Tuy nhiên, có thực sự không có các giải pháp thông minh? Ví dụ, nó có thể là loại hoist có thể kiểm tra ra khỏi vòng chặt chẽ hoặc sử dụng một số đường ống khác, nơi trình biên dịch JS hiện đại có thể tối ưu hóa đi thêm cruft khi các loại là số.
Ý tưởng?
có thể bạn có thể gõ giả tĩnh bằng ký hiệu hungarian? Mã của bạn sẽ nổ tung ngoạn mục mà không có thông báo lỗi nếu bạn trộn ngay cả một loại ở bất kỳ đâu, tất nhiên. – evan
Có một bài viết ở đây lại. JS quá tải nhà điều hành ... http://www.2ality.com/2011/12/fake-operator-overloading.html –