Tất cả những điều đã nói ở trên, người ta có thể chỉ cần tạo một hàm lồng nhau để thay thế một số mã được bản địa hóa, lặp lại trong một hàm (sẽ chỉ được sử dụng bên trong hàm mẹ). Một chức năng ẩn danh là một ví dụ hoàn hảo về điều này.
Một số người có thể nói chỉ tạo các phương thức riêng tư (hoặc các khối mã nhỏ hơn) trong một lớp, nhưng điều đó đang làm xáo trộn vùng nước khi một nhiệm vụ cực kỳ cụ thể (dành riêng cho cấp chính) cần được mô-đun hóa, nhưng không nhất thiết phải có sẵn cho phần còn lại của một lớp học. Tin tốt là nếu hóa ra bạn cần chức năng đó ở một nơi khác, thì cách khắc phục khá sơ đẳng (chuyển định nghĩa đến vị trí trung tâm hơn).
Nói chung, sử dụng JavaScript làm tiêu chuẩn để đánh giá các ngôn ngữ lập trình dựa trên C khác là một ý tưởng tồi. JavaScript chắc chắn là con vật riêng của nó khi so sánh với PHP, Python, Perl, C, C ++ và Java. Tất nhiên, có rất nhiều điểm tương đồng chung, nhưng các chi tiết thực tế, phức tạp (tham khảo JavaScript: Hướng dẫn Định nghĩa, Phiên bản thứ 6, Chương 1-12 ), khi được chú ý đến, hãy làm cho JavaScript cốt lõi trở nên độc đáo, đẹp mắt, khác biệt, đơn giản và phức tạp cùng một lúc. Đó là hai xu của tôi.
Nói rõ hơn, tôi không nói các hàm lồng nhau là riêng tư. Chỉ cần lồng ghép đó có thể giúp tránh lộn xộn khi một thứ gì đó nhỏ cần được mô-đun hóa (và chỉ cần thiết bởi hàm cha).