私は JavaScript で書かれたソースコードを読むのがちょっと苦手。主流の言語であり、今後もよく読むことになると思うので、なぜ苦手なのか分析してみた。
JavaScript のソースは、関数 (処理) を関数の引数として扱うことができるため (第一級オブジェクト)、その処理が結局どこで実行されるのか、ソースをよく読まないと分からない。つまり、その関数の処理がどこで実行されるのかがパット分からないので、苦手意識を持っているのだと思う。
他の言語でも、コールバックなど、同じような仕組みはあるのだが、JavaScript はシングルスレッドでありながらマルチスレッドであるかのように動くことを期待されるため、こういったコールバックの処理がたくさん出てくる。これが組み合わさって読みにくくなっているのだろう。