JavaScript DOM的本质及操作方法(1)(2)
JavaScript要点
在我们继续讲DOM之前有必要学习一下JavaScript基础要点,如果有些东西你理解起来有些困难,别担心,你早晚会搞定它的。在JavaScript种不同类型的值,它们是数值、字符串、布尔值、对象、Undefined 和 Null。单行注释使用两个斜杠(//),这行内的所有内容都将被作为注释内容理解。多行注释使用’/*’ 和 ‘*/’完成注释段落。
数值
在JavaScript中所有数值都被描绘成浮点值,当定义数值变量时记得不要用引号。
- // 注: 要一直使用 'var' 来声明变量:
- var leftSide = 100;
- var topSide = 50;
- var areaOfRectangle = leftSide * topSide; // = 5000
字符串
你定义的字符串都是有字面上来看,JavaScript不会对它进行处理。一个字符串可由一连串的Unicode字符组成,并由一对双引号或单引号包围。
- var firstPart = 'Hello';
- var secondPart = 'World!';
- var allOfIt = firstPart + ' ' + secondPart; // Hello World!
- // +号进行字符串连接处理
- // (它还可用于数学上的加法运算)
布尔值
布尔类型在你进行条件判断的时候很有用,以了解是否符合指定的标准。布尔有两个可能的值:true和false。任何使用逻辑算法的比较结果都将是布尔值。
- 5 === (3 + 2); // = true
- // 你可以给变量声明布尔值:
- var veryTired = true;
- // 你可以像这样测试:
- if (veryTired) {
- // 你的代码
- }
上面看到的’===’是比较运算符,我们将在后面讨论。
函数
函数是一个专门的对象。
- // 使用函数操作创建一个新函数:
- function myFunctionName(arg1, arg2) {
- // 这里是函数的代码
- }
- // 如果你省略掉函数名,那么你创建的是"匿名函数":
- function(arg1, arg2) {
- // 这里是函数的代码
- }
- // 执行函数仅需对他进行引用并使用圆括号 (附带参数):
- myFunctionName(); // 无参数
- myFunctionName('foo', 'bar'); // 带参数
- // 你也可以在不声明变量的情况下执行函数
- (function(){
- // 这就是所谓的自调用匿名函数
- })();
数组
数组也是一个专门的对象,它可以包含任意数量的数据。要访问数组中的数据你就必须使用数字,用以引用其在数组中的”索引”。
- // 两种声名数组的不同方式,
- // 字面:
- var fruit = ['apple', 'lemon', 'banana'];
- // 使用数组构造器:
- var fruit = new Array('apple', 'lemon', 'banana');
- fruit[0]; // 访问数组中的第一个数据项 (apple)
- fruit[1]; // 访问数组中的第二个数据项 (lemon)
- fruit[2]; // 访问数组中的第三个数据项 (banana)
对象
对象是命名的的值的集合(键-值对),它和数组很相似,唯一的不同之处在于你可以为每个数据值指定名字。
- // 两种声明对象的不同方式,
- // 字面(大括号):
- var profile = {
- name: 'Li',
- age: 23,
- job: 'Web Developer'
- };
- // 适用对象构造器:
- var profile = new Object();
- profile.name = 'Li';
- profile.age = 23;
- profile.job = 'Web Developer';
if/else语句
if/else语句是JavaScript中最常见的结构,它看上去就像下面这样:
- var legalDrinkingAge = 21;
- var yourAge = 23;
- if ( yourAge >= legalDrinkingAge ) {
- // 我们使用'alert'来通知用户:
- alert('你可以喝水.');
- } else {
- alert('对不起,你不能喝水.');
- }
循环
循环在遍历数组中的数据项或对象的所有成员时非常有用,JavaScript中最常用的循环是for和while语句。
- var envatoTutSites = ['NETTUTS','PSDTUTS','AUDIOTUTS','AETUTS','VECTORTUTS'];
- // WHILE循环
- var counter = 0;
- var lengthOfArray = envatoTutSites.length;
- while (counter < lengthOfArray) {
- alert(envatoTutSites[counter]);
- counter++; // 等同于 counter += 1;
- }
- // FOR循环
- // (The i stands for "iterator" - you could name it anything)
- for (var i = 0, length = envatoTutSites.length; i < length; i++) {
- alert(envatoTutSites[i]);
- }






