1、怎么编写JavaScript代码
<!-- 1_1.html -->
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
alert('Hello World!');
</script>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
</body>
</html>
可以看到,如果我们要在HTML代码里引入JavaScript,加上script标签就可以了,type="text/javascript"甚至都没必要写,因为默认就是JavaScript。
2、基本语法
和Java基本一致,不同的地方在于JavaScript不需要在语句最后加上分号。但是不加分号也可能导致运行结果和期望不一致。所以最好还是加上分号。
注释也是有两种://和/*
3、数据类型和变量
JavaScript的数据类型和Java差不多,所以这里我只讲不同的、需要注意的地方。
① Number
Number也就是数字类型,有浮点型、整形等,比较特殊的两个是NaN和Infinity,分别表示无法计算和超过表示范围。
var i = Number.MAX_VALUE;
i = i+Number.MAX_VALUE; // i = Infinity
② 比较运算符
大于和小于就不多说了,比较特殊的是等于,有两种比较方式:==和===。但是建议都用===,因为==会先把等号左右的变量转化成相同的数据类型再比较,所以往往会得到不可思议的答案,比如2=='2'为true,而===如果遇到不同的数据类型就直接返回false,一样再比较。
alert('2' == 2); // true
alert('2' === 2); // false
也有一个个例:NaN和任何数都不相等,包括它自己。判断是不是NaN的方式,就是用isNaN函数。
alert(NaN === NaN); // false
alert(isNaN(NaN)); // true
③ null和undefined
前者表示空值,后者表示未定义。不要想着怎么区分它们,因为这个没有意义,大多数情况下都应该用null,而undefined仅仅在判断参数是否传递的时候有用。
④ 数组
JavaScript的数组比Java的要灵活,同一个数组里可以有不同的数据类型,而且直接用arrayName = […]的方式声明就可以。虽然也可以用arrayName = new Array(…)的方式,但不如前者简明。
a = [123, 3.333, false, null, '明天人机大战'];
alert(a[0]); // 123
alert(a[4]); // 明天人机大战
alert(a[5]); // undefined
⑤ 对象
JavaScript的对象和C++的Struct类似,都是一个个键值对。声明方式如下:
var student = {
name: "XiaoMing",
age: 14,
subject: ["Chinese", "English", "Math"]
};
要访问某个属性的值有两种方式:对象名.属性名或者是对象名["属性名"]
⑥ strict模式
为了避免同时使用不用var和用var声明变量的方式,引起变量值的不确定,建议使用strict模式编写JavaScript代码。
'use strict';
i = 10;
alert(i);
如果不是特别旧的浏览器,就会识别这个模式,凡是使用没有通过var声明的变量,都会报错。