
1.2 从网页中引用JavaScript
1.2.1 定义脚本语言的类型
JavaScript 脚本语言同其他语言一样,有它自身的基本数据类型、表达式和算术运算符及程序的基本框架结构。JavaScript 提供了 4 种基本的数据类型用来处理数字和文字;而变量是提供数据存取和信息存放的地方;表达式则可以完成较复杂的信息处理。
1.基本数据类型
在JavaScript中,4种基本的数据类型:数值型(整数和实数)、字符串型(用“”号或‘’括起来的字符或数值)、布尔型(使True或False表示)和空值。在JavaScript的基本类型中的数据可以是常量,也可以是变量。由于 JavaScript 采用弱类型的形式,因而一个数据的变量或常量不必首先声明,而是在使用或赋值时确定其数据类型的。当然也可以先声明该数据的类型,也就是在赋值时主动说明其数据类型。
2.常量
(1)整型常量
JavaScript 的常量通常又称字面常量,它是不能改变的数据。整型常量可以使用十六进制、八进制和十进制表示其值。
(2)实型常量
实型常量是由整数部分加小数部分表示的,如 12.32、193.98 。可以使用科学或标准方法表示:5E7、4e5等。
(3)布尔常量
布尔常量只有两种状态:true或false。它主要用来说明或代表一种状态或标志,以说明操作流程。在有些语言中,0和1也可以用来代表false和true,但是在JavaScript中只能用true或false表示布尔值。
(4)字符型常量
使用单引号(')或双引号(")括起来的一个或几个字符。如 "This is a book of JavaScript"、"3245"、"ewrt234234" 等。
(5)空值
JavaScript中有一个空值null,表示什么也没有。如果试图引用没有定义的变量,则返回一个null值。
(6)特殊字符
同C语言一样,在JavaScript中以斜杠(/)开头的、不可显示的特殊字符称为控制字符。
3.变量
变量的主要作用是存取数据、提供存放信息的容器。对于变量必须明确变量的命名、变量的类型、变量的声明及其变量的作用域。
(1)变量的命名
JavaScript中的变量命名同其计算机语言非常相似,这里要注意以下两点:
➢ 必须是一个有效的变量,即变量以字母开头,中间可以出现数字,如 test1、text2等。除下画线(_)作为连字符外,变量名称不能有空格、“+”、“-”、“,”或其他符号。
➢ 不能使用JavaScript中的关键字作为变量。在JavaScript中定义了40多个关键字,这些关键字是JavaScript内部使用的,不能作为变量的名称。如var、int、double、true不能作为变量的名称。
在对变量命名时,最好把变量的意义与其代表的意思对应起来,以帮助记忆。
(2)变量的类型
在JavaScript中,变量可以用关键字var声明:
var mytest;
该例子定义了一个mytest变量,但没有赋予它值。
var mytest="This is a book"
该例子定义了一个mytest变量,同时赋予了它值。
在 JavaScript 中,变量可以不预先声明,而在使用时再根据数据的类型来明确其变量的类型。例如:
x=100 y="125" xy= true cost=19.5
其中x为整数,y为字符串,xy为布尔型,cost为实型。
(3)变量的声明及其作用域
JavaScript变量可以在使用前先声明,并且可赋值。通过使用var关键字声明变量。对变量进行声明的最大好处就是能及时发现代码中的错误,因为 JavaScript 是采用动态编译的,而动态编译时不易发现代码中的错误,特别是变量命名方面。
关于变量,还有一个重要话题,那就是变量的作用域。在 JavaScript 中同样有全局变量和局部变量。全局变量定义在所有函数体之外,其作用范围是整个函数;而局部变量定义在函数体之内,只对本函数是可见的,而对其他函数则是不可见的。
1.2.2 调用外部脚本文件
将JavaScript脚本去掉标记后保存为外部文件,扩展名为“.js”。例如,定义一个如下的外部JavaScript文件,并保存成“hello.js”:
alert("您好!");
然后在页面中进行调用,调用的方法如下所示,其中 src 用来指定文件名及其路径。在一个HTML文件中调用此文件:
<html> <body> <script language="javascript" src="hello.js"> </script> </body> </html>
当然,直接把JavaScript代码放在HTML脚本中也能达到同样的效果,但是这样的话, JavaScript代码将被网页浏览者轻而易举地得到:
<html> <body> <script language="javascript"> alert("您好!"); </script> </body> </html>