Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.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 `当我们使用模板文本时,use strict`不起作用_Javascript_Template Literals_Use Strict - Fatal编程技术网

Javascript `当我们使用模板文本时,use strict`不起作用

Javascript `当我们使用模板文本时,use strict`不起作用,javascript,template-literals,use-strict,Javascript,Template Literals,Use Strict,如果我将使用strict与backticks/template文本一起括起来,则“使用strict”无法按预期工作。你能分享一下背后的原因吗?是否存在模板文字无法按预期工作的类似异常语句 “使用严格的”; x=3.14;//理想情况下,它应该会导致错误(因为没有定义x)。 警报(x)这是因为规范中明确定义了完全由产品组成的,并将确切的代码点序列限制为“使用严格的”或“使用严格的” 从: A是以A、A或A的首字母s或s出现的最长的s序列,序列中的每个字母完全由一个标记和一个分号组成。分号可以显式

如果我将
使用strict
与backticks/template文本一起括起来,则“使用strict”无法按预期工作。你能分享一下背后的原因吗?是否存在模板文字无法按预期工作的类似异常语句

“使用严格的”;
x=3.14;//理想情况下,它应该会导致错误(因为没有定义x)。
警报(x)这是因为规范中明确定义了完全由产品组成的,并将确切的代码点序列限制为
“使用严格的”
“使用严格的”

从:

A是以A、A或A的首字母s或s出现的最长的s序列,序列中的每个字母完全由一个标记和一个分号组成。分号可以显式显示,也可以通过自动插入分号来插入。A可以是空序列

A是A中的一个,其是精确的码点序列
“使用严格的”
“使用严格的”
。A不能包含或。

A可以包含多个。但是,如果发生这种情况,实现可能会发出警告

重点补充


另一方面,a与a是完全不同的产品,因此不能成为有效的指令。

它就是这样设计的

从:

14.1.1指令序言和使用严格指令 指令序言是ExpressionStatement产品的最长序列,作为FunctionBody、ScriptBody或ModuleBody的初始语句ListItem或ModuleItem产品出现,其中序列中的每个ExpressionStatement完全由StringLiteral标记和分号组成。分号可以显式出现,也可以由插入。指令序言可以是空序列

Use Strict指令是指令序言中的一个表达式语句,其StringLiteral是精确的代码单元序列
“Use Strict”
“Use Strict”
Use Strict指令不能包含转义序列或行连续

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

我的


它明确指出,要使Use Strict指令起作用,它必须使用单引号或双引号编写,但不允许使用模板文字。

Use string
只是不适用于模板文字我更喜欢模板文字,所以尝试过,在这个特殊的字符串上,它是否有效…当它只是一个简单的字符串时,为什么要使用模板文本?“若要为整个脚本调用严格模式,请将确切的语句
“use strict”
(或
“use strict”;
)放在任何其他语句之前。”模板文本存在并不意味着您需要将每个字符串文本替换为一个…