JavaScript DOM编程艺术学习笔记-第二章JavaScript语法

时间:2022-02-21 16:02:30

一、JavaScript示例

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Just a Test</title>
</head>
<body>
<script src="example.js"></script>
</body>
</html>

将上述代码放入文件中,并将文件命名为test.html

alert("hello world!")

将上述代码命名为example.js并与test.html放入同一文件夹,然后使用浏览器打开test.html,查看结果。

二,语法

语句

JavaScript由一系列语句构成,每行一条语句,并最好加上分号结尾。如果多条语句放在同一行上,则必须使用分号分隔它们。

注释

单行注释://

多行注释:/* */

也可使用html风格的注释:<!--,但是只支持单行,且结尾不需要-->,为避免混淆,不推荐使用这种注释方式。

变量

存储各类可变数据的东西称为变量。将值存入变量的操作称为赋值。

在使用变量前,可以不需要声明,但是提前声明变量是一种良好的习惯。

变量既可单独声明,如

var mood;
var age;

也可一条语句一次声明多个变量:

var mood,age;

甚至也可声明赋值一次完成,

var mood = "happy", age = 23;

JavaScript变量区分大小写,变量名只允许出现字母、数字、美元符号和下划线,但第一个字符不能是数字。

数据类型

JavaScript是一种弱类型语言,在声明变量的同时不需要声明变量的类型,并且可以在任何阶段改变变量的数据类型。

JavaScript中的数据类型:

1,字符串

字符串由零个或者多个字符组成,字符串必须在引号里,单引号双引号均可。

如果字符串中包含单引号,可以将其放在双引号中或者放在单引号中使用转义字符。即:

var mood = "don't ask";

var mood = 'don\'t ask';

如果字符串包含双引号,同理。

在整个脚本中对字符串使用相同的引号格式是一个良好的编程习惯。

2,数值

JavaScript中数值可以为整数和浮点数

3,布尔值

只有两种可能取值:true和false

数组

可以使用数组存储多个值,并且这多个值的类型也可不相同。使用Arrary声明数组。

例:

var beatles = Array(4);

上面的语句声明了有四个元素的数组。

向数组中添加元素的行为称为填充。在填充时,需给出数组的名字和下标。

如:beatles[0] = "John";

注:JavaScript中数组的下标从0开始

如果不知道数组的长度,也可以这样声明:

var beatles = Array();

下面的方式也是可以的:

var beatles = ["John", "Paul"];  //使用方括号创建数组

var lennon = ["John", 1940, false];  //在数组中包含不同类型的值

var mbeatles = [];  //使用方括号创建空数组

mbeatles[0] = lennon;  //数组包含其他的数组

其中,mbeatles[0][0]为"John"。

关联数组:使用字符串作为数组下标的数组

var lennon = [];

lennon["name"] = "John";

lennon["year"] = 1940;

lennon["living"] = false;

不推荐使用。

对象

与数组类似,对象也是使用一个名字表示一组值,对象的每个值都是对象的一个属性。如:

 var lennon = Object();
lennon.name = "john";
lennon.year = 1940;
lennon.living = false;

上面的代码使用Object关键字来创建对象,也可以使用花括号来创建对象

{propertyName:value,....}花括号中也可为空。例:

var lennon = {name:"John", year:1940, living:false};

三,操作

常用操作符:+ 、-、 *、 /

还有:自加:++、自减:--

加运算符可以运用于字符串和数值数据、字符串数据的相加。

还有+=、-=等等。

四、条件语句

if(condition){statements;}  //condition为布尔类型

比较操作符

常见的比较运算符:>,<,>=,<=,==,===,!=,!==

其中===为严格等于,!==为严格不等于

其中==有如下效果:

var a = false, b = "";

a == b 的结果为true。

逻辑操作符

逻辑与:&&

逻辑或:||

逻辑非:!

五,循环语句

while循环:

while(condition){statements;}

do {statements;}while(condition)

for循环

for(initial condition; test condition,; alter condition){statements;}

六,函数

定义函数的语法:

function name(arguments){

  statements;

}

变量的作用域

全局变量:可以在脚本中的任何位置被引用。作用域为整个脚本。

局部变量:只存在于声明它的函数的内部。

在函数中声明的局部变量和全局变量同名时,全局变量被屏蔽。

七,对象

对象是一种非常重要的数据类型,是自包含的数据集合,包含在对象中的数据可以通过两种形式访问-属性和方法。

属性:隶属于某个特定对象的变量

方法:只有某个特定对象才能调用的函数

对象就是由一些属性和方法组合在一起而构成的一个数据实体

在JavaScript里,属性和方法都使用“点”语法来访问

Object.property

Object.method()

对象需要实例化才能够被使用,使用new运算符对对象进行实例化

如:var John = new Person;

内建对象

内建对象:JavaScript预先定义的对象,我们可以直接拿来用。

宿主对象

除了内建对象,还可以在JavaScript脚本中使用一些已经预定义好的其他对象。这些对象不是由JavaScript语言本身而是由它的运行环境提供的。具体到Web应用,这个环境就是浏览器,由浏览器提供的预定义对象被称为宿主对象