Javascript 简明教程

JavaScript - Syntax

JavaScript Syntax

JavaScript 语法包含一组规则,用来定义如何构建 JavaScript 代码。可以通过 JavaScript 语句来实现 JavaScript,这些语句被放置在网页中的 <script>…​ </script> HTML 标记中。

你可以在网页中的任何位置放置包含 JavaScript 的 <script> 标记,但通常建议你将它包含在 <head> 标记中。

<script> 标记警示浏览器程序开始解读这些标记之间的所有文本作为脚本。你的 JavaScript 的一个简单语法将如下所示。

<script ...>
   JavaScript code
</script>
  1. *语言 −*此属性指定你正在使用的脚本语言。通常情况下,它的值为 javascript。虽然 HTML 的最近版本(以及它的后继者 XHTML)已经逐步淘汰了此属性的使用。

  2. *类型 −*此属性是现在用来指示所使用的脚本语言的推荐属性,并且它的值应设置为 “text/javascript”。JavaScript 已成为 HTML5 中的默认语言,并且现代浏览器已成为默认语言,因此现在添加类型不是必需的。

因此,你的 JavaScript 代码段看起来像 −

<script language = "javascript" type = "text/javascript">
   JavaScript code
</script>

Your First JavaScript Code

让我们使用一个示例,打印出 “Hello World”。我们调用 document.write 方法,它将字符串写入到我们的 HTML 文档中。此方法可用于写入文本、HTML 或者两者。查看以下代码 −

<html>
<head>
   <title> Your first JavaScript program </title>
<head>
<body>
   <script language = "javascript" type = "text/javascript">
      document.write("Hello World!")
   </script>
</body>
</html>

此代码将产生以下结果 −

Hello World!

JavaScript Values

在 JavaScript 中,你可以使用两种类型的值。

  1. Fixed values (Literals)

  2. Variables (Dynamic values)

JavaScript Literals

在下面的代码中,10 是数字文字,‘Hello’ 是字符串文字。

<html>
<body>
   <script>
      document.write(10); // Number Literal
      document.write("<br />"); // To add line-break
      document.write("Hello"); // String Literal
   </script>
</body>
</html>

此代码将产生以下结果 −

10
Hello

JavaScript Variables

在 JavaScript 中,变量用于存储动态数据。

你可以使用下面的关键字来定义 JavaScript 中的变量。

  1. var

  2. let

  3. const

你可以使用赋值运算符(等于符号)来给变量赋值。

在下面的代码中,变量 a 包含数字值,并且变量 b 包含文本(字符串)。

<html>
<body>
   <script>
      let a = 5; // Variable Declaration
      document.write(a); // Using variable
      document.write("<br>");
      let b = "One";
      document.write(b);
   </script>
</body>
</html>

此代码将产生以下结果 −

5
One

Whitespace and Line Breaks

JavaScript 忽略出现在 JavaScript 程序中空格、制表符和换行符。你可以在程序中自由地使用空格、制表符和换行符,并且可以自由地格式化和缩进你的程序,以一种清晰一致的方式,便于阅读和理解代码。

Semicolons are Optional

JavaScript 中的简单语句通常后跟一个分号字符,就像它们在 C、C++ 和 Java 中一样。但是,JavaScript 允许你省略此分号,如果你的每个语句都位于单独的行中。例如,可以编写没有分号的以下代码。

<script>
   var1 = 10
   var2 = 20
</script>

但是,如果按如下方式格式化为单行,则你必须使用分号 −

<script>
   var1 = 10; var2 = 20;
</script>

Case Sensitivity

JavaScript 是一种区分大小写的语言。这意味着语言关键字、变量、函数名和任何其他标识符都必须始终采用一致的大小写字母输入。

所以在 JavaScript 中,标识符 TimeTIME 将传达不同的含义。

在下面的代码中,我们比较了字符串“time”和“Time”,并返回 false。

<html>
<body>
   <script>
      let a = "time";
	  let b = "Time";
	  document.write("a == b? " + (a == b));
   </script>
</body>
</html>

此代码将产生以下结果 −

a == b? false

JavaScript and Camel Case

  1. 帕斯卡尔式命名法——我们可以创建变量,如SmartWatch、MobileDevice、WebDrive等。它表示大写驼峰式字符串。

  2. 小写驼峰式命名法——JavaScript 允许开发人员使用诸如smartwatch、mobileDevice、webDriver等的变量名和表达式名。这里第一个字符是小写。

  3. 下划线——我们可以在声明诸如smart_watch、mobile_device、web_driver等的变量时使用下划线。

JavaScript Keywords

JavaScript 包含多个关键字,可以用于特定任务。例如,function 关键字可用于定义函数。let、var 和 const 关键字可用于定义变量。

让我们通过下面的例子理解关键字的用法。

Example

在这个例子中,我们使用 function 关键字来定义函数。我们在函数内部使用 var 关键字来定义 sum 变量。

此外,我们在函数外部使用 let 和 const 关键字来定义两个变量,并使用值对其进行初始化。之后,我们使用函数名称调用函数,并将变量作为参数传递。

<html>
<body>
   <script>
      function getSum(first, second) {
         var sum = first * second;
         document.write("The product of " + first + " and " + second + " is " + sum);
      }
	  let first = 3;
	  const second = 4;
      getSum(first, second);
   </script>
</body>
</html>

此代码将产生以下结果 −

The product of 3 and 4 is 12

JavaScript Identifiers

在 JavaScript 中,标识符是变量、函数、对象等的名字。

例如,p 是下面代码中的一个标识符。

<script>
   pet p = 90;
</script>

'test' 是下面代码中的一个标识符。

<script>
   function test() {
   }
</script>

以下是定义有效标识符需要遵循的规则。

  1. 标识符应始终以字母(A-Z、a-z)、$(美元符号)或 _(下划线)开头。

  2. 它不应该以数字或短横线开头。

  3. 标识符还可以包含数字,但不能以数字开头。

Comments in JavaScript

JavaScript 既支持 C 样式注释,也支持 C++ 样式注释,即 -

  1. // 和行尾之间的任何文本都被视为注释,并被 JavaScript 忽略。

  2. /* 和 */ 之间的任何文本都被视为注释。这可能跨越多行。

  3. JavaScript 也识别 HTML 注释开头序列 <!--。JavaScript 把它当作单行注释,就像它对待 // 注释一样。

  4. HTML 注释结尾序列 -→ 未被 JavaScript 识别,因此它应写为 //-→。

Example

以下示例展示了如何在 JavaScript 中使用注释。

<script>
   // This is a comment. It is similar to comments in C++
   /*
   * This is a multi-line comment in JavaScript
   * It is very similar to comments in C Programming
   */
</script>

Operators in JavaScript

JavaScript 包含各种算术、逻辑、按位等运算符。我们可以使用 JavaScript 中的任何运算符,如下示例所示。

Example

在这个示例中,我们定义了 var1 和 va2,并用数字值对其进行初始化。之后,我们使用 '*' 运算符获取 var1 和 var2 的乘法结果。

<html>
<body>
   <script>
      var1 = 10
      var2 = 20
      var3 = var1 * var2;
      var4 = 10 + 20;
      document.write(var3, " " ,var4);
   </script>
</body>
</html>

此代码将产生以下结果 −

200 30

通过这种方式,程序员可以使用操作数使用其他运算符。

Expressions in JavaScript

你可以通过组合变量、值和运算符在 JavaScript 中创建表达式。

例如,下面的表达式添加两个数字。

10 + 20;

下面的表达式将两个变量的值相乘。

a * b;

下面的表达式将变量 c 的值除以 2。

c / 2;

Example

在下面的代码中,我们使用了赋值和算术表达式。

<html>
<body>
   <script>
	  let a = 10;
      let b = 2;

      let c = a; // Assigning a value of a to c. Assignment expression.
      let d = a + b; // Adding a and b. Arithmetic expression.
      let e = a - b; // Subtracting b from a.

      document.write("c = " + c + "<br>");
      document.write("d = " + d + "<br>");
      document.write("e = " + e + "<br>");
   </script>
</body>
</html>

此代码将产生以下结果 −

c = 10
d = 12
e = 8

我们将在接下来的章节中探索更多的表达式。

JavaScript Character Set

JavaScript 包含一组 Unicode 字符。

Unicode 字符在文本中添加特殊字符,例如表情符号、符号等。

例如,下面的 Unicode 字符将显示向左箭头。

&larr

下面的 Unicode 字符将显示 RS(卢比符号)符号。

8360

然而,有很多 JavaScript 语法需要我们学习,不可能在单一章节内学习完所有内容。因此,我们只在本节中学习了基本语法,以开始学习 JavaScript,我们将在接下来的章节中学习其他语法。