Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么是开场白?_Javascript_Ecmascript 5 - Fatal编程技术网

Javascript 什么是开场白?

Javascript 什么是开场白?,javascript,ecmascript-5,Javascript,Ecmascript 5,我偶然发现了人们称之为开场白指令的东西。更通俗的说法是“使用严格”;JavaScript中的字符串文本。我早就知道了。但是公共分母序言指令。是什么?关于这个问题的文献资料很少。最好的一个是我联系的问题 我的问题是一般性的: 它们是什么 它们可以用来做什么 谁使用它们?为什么 我能做吗 我应该吗?不需要文档。看看里面 指令序言是最长的表达语句序列 作为初始SourceElement产品出现的产品 程序或函数体,以及 序列完全由一个StringLiteral标记和一个 分号。分号可以显式出现,也可

我偶然发现了人们称之为开场白指令的东西。更通俗的说法是“使用严格”;JavaScript中的字符串文本。我早就知道了。但是公共分母序言指令。是什么?关于这个问题的文献资料很少。最好的一个是我联系的问题

我的问题是一般性的:

它们是什么

它们可以用来做什么

谁使用它们?为什么

我能做吗


我应该吗?

不需要文档。看看里面

指令序言是最长的表达语句序列 作为初始SourceElement产品出现的产品 程序或函数体,以及 序列完全由一个StringLiteral标记和一个 分号。分号可以显式出现,也可以由 自动插入分号。指令序言可以是空的 顺序

Use Strict指令是指令中的表达式语句 其StringLiteral为确切字符序列的序言 “严格使用”或“严格使用”。Use Strict指令不能包含 转义序列或换行符

指令序言可能包含多个Use Strict指令。 但是,如果发生这种情况,实现可能会发出警告

换句话说,指令序言是函数或程序(顶级代码)最长的字符串文字+分号序列:

或:


“废话”;//一般来说,我对开场白指令的了解还不够多,无法回答,但这里有更多的信息,如果可以的话。严格模式是我所知道的唯一一个得到广泛支持的模式。正如您链接的问题所述,在一些浏览器中。除了“严格使用”之外,它们还有什么用途?对于其他“非标准”指令,如“使用asm”、“使用6to5”等。
(function(){
  "use strict"; // <-- Directive Prologue
})()
(function() {
  // Directive Prologue start
  "foo bar"
  "baz";
  '123';
  '';
  // Directive Prologue end
})();
'blah'; // <-- Directive Prologue (top-level code)
/* rest of the code here */
var x;
"use strict"; // <-- NOT a Directive Prologue
(function() {
  1 + "use magic"; // <-- NOT a Directive Prologue
})();