5

当我学习JavaScript时,我一直在浏览网页,并在Javascript中看到许多对结构的引用,但我似乎无法找到它们是什么以及它们不是什么的完整定义,特别是在上下文中的Javascript。JavaScript中的构造究竟是什么?

例如,在“类似的问题:”我看到,导致一个例子担纲下面的代码链接:

What is this construct in javascript?

(function() { 

})(); 

据我了解,这是一个概念,但是什么他们是由什么定义的?

+1

@dbaseman,更仔细地阅读问题 – smartcaveman

+0

@smartcaveman谢谢,你是对的。 – McGarnagle

+0

@ u1sonderzug,有什么你仍然在这里困惑? – smartcaveman

回答

10

构造是一个通用术语,指的是特定编队中的任意代码集合。这不是一个特定于JavaScript的术语。

基本上,它可以适用于任何事情。因此,虽然您引用的代码是一种称为自调用匿名函数的构造,但var x = "hello world";是一种称为变量声明和赋值的构造。

+0

在JavaScript中,是否可以说任何以a;是一个构造?直到; ? – fakeguybrushthreepwood

+0

任何东西都是构造。关键字是一个构造。值文字是一个构造。分号不是必需的。你正在反思这一点。 – smartcaveman

+0

但是如果var x =“hello world”;是一种构念,基于你所说的'任何东西都是构造',这是否意味着'x'或者'世界'是一个构念?它不是以某种方式引用一行代码吗?我知道这听起来可能很荒谬 - 但我真的不是100%清楚。 – fakeguybrushthreepwood

3

A language construct是您正在寻找的全部术语。根据连锁定义:

一种语言构成是可以从一个或多个词法标记按照编程语言的规则来形成的程序的语法上容许部分。

所以它是遵循语言规则的任何有效的书面代码段。这是对“表达式”,“语句”,“函数参数列表”,“赋值语句”,“关键字”,“函数定义”等单词的概括,每个单词定义了一系列要查找的令牌以及它们将意味着语言的规则。完成的程序的代码是与他们构造的

+0

“这是一个像......这样的词的泛化”,这就是为什么这是我的赢家。清楚表明“构造”是一个元概念,而不是一种编码模式。 – Tom

0

MASTERING HTML4脚本参考由Deborah和埃里克·雷:

结构是,你可以在JavaScript中使用控制脚本

他们继续为流动的结构按字母顺序列出所有这样的控件,其中包括Break,Comment,If,If else .... 因此,构造是JavaScript中非常具体的术语定义,用于命名和包含所有控制流的语句的一个脚本。