This article is currently in the process of being translated into Chinese (~95% done).
Basic JavaScript syntax
如果你以前有过像c++、Java、c#或PHP这样的流行编程语言的经验,你可能会认识javascript的语法。原因在于,所有这些语言要么源自C编程语言,要么深受C编程语言的启发。但是,如果您以前没有这些语言的经验,甚至根本没有编程经验,请允许我向您快速介绍JavaScript的语法。
让我们从一个非常基本的规则开始,如果你对编程完全陌生,这可能会让你感到困惑:
JavaScript编程语言是区分大小写的
这意味着小写字母a 和大写字母A是不同的--让我们看一个例子:
var a = 42;
alert(A);
在这里,我声明了一个变量(稍后将详细介绍),名称为a(小写字母),但在下一行中,我尝试通过引用A(大写字母)来使用它。这将因为我没有使用相同的字母而导致失败。
语句
一行代码就是一个语句
alert("Hello, world!");
注意使用分号结束它 - 这告诉解释器该语句已完成。这意味着虽然语句通常是一行代码,实际上不必包含在一行中。可以随意使用多行,只要以分号结尾即可
var s = "Hello world and welcome to this very long
piece of text, which uses multiple lines!";
请注意,一些 C 风格的编程语言对于结束分号的要求非常严格,必须要求分号结束,但 JavaScript 实际上并非如此 - 它会尝试猜测您的语句是否在到达换行符时结束,这在许多情况下都是有效的。请看下面例子
var s = "Hello, world"
var n = 42
虽然JavaScript 不严格要求结束分号,但是,如果代码行比较复杂,解释器有时无法理解您的意图,那么您无论如何都必须添加分号。因此,JavaScript 代码指南通常建议您始终使用结尾分号 - 这样您就不会在真正需要的时候忘记它。也方便您以后切换到更严格的编程语言时无需学习新习惯
代码块
当使用 IF 语句和循环等控制结构时,您需要控制包含哪些代码行。默认情况下,JavaScript 假定只有下一行是控制结构的一部分。示例:
var b = false;
if(b == true)
alert("This will not happen...");
alert("This WILL happen!");
如果您运行它,只有第二个 alert 被触发。原因是 if 语句永远不会为真,if 下面一行的语句不会触发。但是,如果您需要在 if 语句中包含多行代码,则需要创建一个块。使用花括号来包裹 if 语句影响的代码行:
var b = false;
if(b == true)
{
alert("This will not happen...");
alert("This won't happen either...");
}
alert("This WILL happen!");
注意,在此示例以及在上面示例中,我缩进了 if 语句后的下一行(第一个例子),以及块内(第二个例子)。这不是必需的,但大多数程序员都会这样做,因为它使代码更具可读性。您可以使用键盘上的 Tab 键缩进一行,甚至几行。如果块内有一个块(依此类推),则应适当缩进 - 每个块缩进一次,如下所示:
let a = 1, b = 2, c = 3;
if(a == 1)
{
if(b == 2)
{
if(c == 3)
document.write("ok!");
}
}
代码块在 JavaScript 中被广泛使用,例如用于控制结构(如上面示例中),也用于定义函数。稍后将详细介绍
代码注释
默认情况下,JavaScript 代码中除空格之外的所有内容都会被解释,因此必须是有效的 JavaScript 代码。但是,有时您需要为自己或团队留下注释。JavaScript 中使用两个正斜杠( // 注释部分 ),解释器会忽略正斜杠其余部分
// This line is a comment
也可以在语句的同一行上执行此操作,只要记住在两个正斜杠之后,其余部分将被解释器忽略
alert("Hello!"); // The rest of this line is a comment
也可以连续多行注释
// This line is a comment
// ...so is this one
如果您有很多多行注释,不想在每行前面加上两个正斜杠,则可以使用多行注释语法。它以正斜杠开头,紧接着是星号 ( /* )。此后,所有内容都被视为注释,直到您使用相同的符号退出注释模式( */ )。以下是示例:
/*
All of these lines are comments
and you can write whatever you want,
formatted however you want it!
*/
根据自己的喜好,在这两种注释方法选一种即可
总结
该篇是对JavaScript语法的快速介绍,希望能帮助你理解本教程其余部分的示例。当然,还有更多的语法需要学习,但我们将在介绍该语言各个方面的过程中逐步深入这些部分。