No ECMAScript5, qual é o escopo de "use strict"?

Qual o escopo do pragma do modo estrito no ECMAScript5?

"use strict";

Eu gostaria de fazer isso (principalmente porque o JSLint não se queixa):

"use strict";

(function () {
  // my stuff here...
}());

Mas não tenho certeza se isso quebraria outro código ou não. Eu sei que posso fazer isso, o que escopo o pragma da função ...

(function () {

  "use strict";

  // my stuff here...

}());

mas o JSLint reclama disso (quando a opção JSLint "strict" está ativada) porque pensa que você está executando o código antes de ativar "use strict".

Aqui está a minha pergunta. Se eu tiver fileA.js:

"use strict";
// do some stuff

e fileB.js:

eval( somecodesnippet ); // disallowed by "use strict"

e depois incluí-los na minha página html na mesma ordem, o pragma terá o escopo definido no arquivo ou o pragma passará para o fileB, bloqueando assim a execução da avaliação?

questionAnswers(4)

yourAnswerToTheQuestion