Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.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 - Fatal编程技术网

在javascript中,什么是;声明立场;?

在javascript中,什么是;声明立场;?,javascript,Javascript,我了解到函数声明只能出现在语句位置。我想知道这些“陈述立场”是什么 这些“声明立场”是什么 在代码中放置语句的有效位置 句法结构被分成几个组,其中一个是语句。另一大类是表达式。一般来说,当表达式生成值时,您可以考虑它们之间的区别,而语句仅将做什么描述为“副作用” 例如,if语句的结构是 if (<expression>) <statement> 因为if语句不是表达式,所以您不能这样做 42 + if(...) {} 要了解有关哪些语句和表达式可用的更多信息,您可以

我了解到函数声明只能出现在语句位置。我想知道这些“陈述立场”是什么

这些“声明立场”是什么

在代码中放置语句的有效位置

句法结构被分成几个组,其中一个是语句。另一大类是表达式。一般来说,当表达式生成值时,您可以考虑它们之间的区别,而语句仅将做什么描述为“副作用”

例如,
if
语句的结构是

if (<expression>) <statement>
因为
if
语句不是表达式,所以您不能这样做

42 + if(...) {}

要了解有关哪些语句和表达式可用的更多信息,您可以查看,但不一定很容易阅读。可能更容易理解


我了解到函数声明只能出现在语句位置

事实上要比这复杂一点。函数声明不是语句,它们是声明。正式声明仅在全局范围和函数内声明的顶层有效。然而,大多数环境允许在其他地方进行函数声明,不幸的是,以不同的方式评估这些情况

正因为如此,ECMAScript 6添加了兼容性规则来解释这种行为,但这不是应该依赖的。另见

当文章说“函数声明是一个语句”时,那当然是一种简化

这些“声明立场”是什么

在代码中放置语句的有效位置

句法结构被分成几个组,其中一个是语句。另一大类是表达式。一般来说,当表达式生成值时,您可以考虑它们之间的区别,而语句仅将做什么描述为“副作用”

例如,
if
语句的结构是

if (<expression>) <statement>
因为
if
语句不是表达式,所以您不能这样做

42 + if(...) {}

要了解有关哪些语句和表达式可用的更多信息,您可以查看,但不一定很容易阅读。可能更容易理解


我了解到函数声明只能出现在语句位置

事实上要比这复杂一点。函数声明不是语句,它们是声明。正式声明仅在全局范围和函数内声明的顶层有效。然而,大多数环境允许在其他地方进行函数声明,不幸的是,以不同的方式评估这些情况

正因为如此,ECMAScript 6添加了兼容性规则来解释这种行为,但这不是应该依赖的。另见


当文章说“函数声明是一条语句”时,那当然是一种简化。

你所读的内容是否有更多的上下文?在哪些地方放置语句是有效的。例如,
if()
if
语句的主体需要是语句,而条件需要是表达式。然而,这实际上并不完全正确。函数声明不是语句,正式来说,在所有语句位置都无效。但是,大多数环境都允许,但应用不同的评估规则。tl;大卫:这很复杂。@David这是一篇博客文章,我不知道我是否可以在这里分享链接。你可以引用这句话above@marcostackoverflow最明确地允许您在帖子中添加URL,所以只需点击编辑按钮,然后说“我继续阅读”http://.... 该职能[……]”.你所读的内容是否有更多的上下文?在哪些地方放置语句是有效的。例如,
if()
if
语句的主体需要是语句,而条件需要是表达式。然而,这实际上并不完全正确。函数声明不是语句,正式来说,在所有语句位置都无效。但是,大多数环境都允许,但应用不同的评估规则。tl;大卫:这很复杂。@David这是一篇博客文章,我不知道我是否可以在这里分享链接。你可以引用这句话above@marcostackoverflow最明确地允许您在帖子中添加URL,所以只需点击编辑按钮,然后说“我继续阅读”http://.... 该功能[……]”。