"use strict";

"use script" がなければ、function 内の this は window を返す。
"use script" が適用されると、function 内の this は undefined である。
では、以下の[A][B]はどうなるであろうか?
[A]には、間違いなく "use script" が適用されるので、undefined を返す。
[B]は、別の<script></script> にはいっているので、
最初の "use script" は適用されない。従って、 window を返す。
<script> "use strict"; console.log("[A]",(function(){return this;})()); </script> <script> console.log("[B]",(function(){return this;})()); </script>
See console...