以下笔记是我学习JavaScript时所记录的笔记,参考书籍(建议大家购买正版。):
JavaScript_DOM编程艺术第二版(中文).PDF
注释
//这是单行注释
/*
这是多行注释
这是多行注释
这是多行注释
*/
多行注释方式在需要插入大段注释时很有用,它可以提高整个脚本的可读性。
变量
JavaScript中没有强制要求需声明变量,但提前声明变量是写代码的好习惯。
变量和其他语法元素名字都是严格区分大小写的,变量ABC和Abc是两个不同的变量。
且变量名称中部能包含空格或标点符号(美元符号$
和下划线_
除外,且第一个字符不允许为数字)。
声明
var a;
var b;
var a, b, c; //一条语句一次可声明多个变量
赋值
a = "one";
b = 22;
c = 11;
声明及赋值
var a ="one";
var b = 22;
var c = 11;
驼峰格式
驼峰格式(camel case):函数名、方法名和对象属性命名首选格式。
var myName = "ruofei";
var myAge= 24;
下划线写法
额,这种方法在我平时写CSS时比较喜欢用,建议还是使用上面的驼峰格式给变量命名赋值,不为别的,看起来专业、易读、接码农的地气。(仅代表个人看法)
var my_name = "ruofei";
var my_age= 24;
数据类型
数据类型我的理解就是给变量分类,不同的分类能进行不同的操作,比如数字类的两个1
相加:
1+1
则等于2
,文本类型的两个1
相加:1+1
则等于11
。
JavaScript在声明变量的时候,不需要声明变量的数据类型。
在我看的教程中写到:
JavaScript不需要进行类型声明,因为它是一种弱类型(weekly typed)语言。这意味着程序员可以在任何阶段改变变量的数据类型。
现阶段我不是特别明白这句话,但我只需要知道JavaScript中不需要声明变量的数据类型就够了,且随时可以改变变量的数据类型。
例如:
var myAge = "thirty three";
...//一大段语句后
myAge = 33;
这里我有个疑问,那是不是运行到最后一个语句的时候,myAge
是一个数字类型的数值“33”?
字符串
字符串是零个或多个字符构成(包括但不限于字母、数字、标点符号、空格)。字符串必须包含在引号里,单引号双引号都可以。
var myName = "ruofei";
var myName = 'ruofei';
虽然可以自由的选用引号,蒂娜最好根据字符串所包含的内容来选择。如字符串中包含双引号,就要把字符串放在单引号内。同理,字符串内单引号,则要把字符串放在双引号中。
var myName = "my name is 'ruofei'";
var myName = 'my name is "ruofei"';
如果字符串中既包含单引号又包含双引号,则需要在字符串中的引号加反斜杠\
转义。如给变量a
赋值字符串2' 10"
:
var a = "2\' 10\"";
数值
数值型变量没有限定必须是一个整数,可以为一个任意位数的正负小数(浮点数),也可以为正负整数。
注意:数值变量和布尔型变量都不能使用单引号或者双引号。
var a = "10";
这样a的值是一个字符串为“10”的变量,而不是数值为“10”的数值变量。
正确如下:
var a = 10;
var b = -10;
var c = 3.14;
var d = -3.14;
布尔值
布尔值只有两个可选值false
和true
。
var a = true;
var b = false;
数组
数组顾名思义是由多个数值构成,如一个班有40名同学,每一名同学都是这个班级的一份子。
数值由两个部分组成:
1、名称:变量的名称(数组的名称)
2、标量:数组里每个值对应一个标量。
如:
var photo = array(10);
photo[0] = "phone1";
photo[1] = "phone2";
photo[2] = "phone3";
....
photo[8] = "phone9";
photo[9] = "phone10";
photo里有10张照片,相册里的每一张照片都是一个标量。标量的起始值为0
。
另一种简便的写法A:
var photo = array ("photo1","photo2","photo3",......,"photo8","photo9","photo10");
另一种简便的写法B:(省去了array)
var photo = ["photo1","photo2",......,"photo9","photo10"];
数组元素可以为字符串、数值和布尔值,如:(数值和布尔值切记不能加引号)
var photo =["ruofei",1992,true];
调用数组中某个值:
var photo =["ruofei",1992,true];
document.write(photo[0]);
相对应的在页面中打印数组photo中的第一个标量值为字符串“ruofei”。
对象
对象与数组很相似,也同时赋值多类型如字符串、数值、布尔值,但对象能很直观的调用其中的某个值,而不用像数组那样需要找到标量号。
如:
var ruofei = Object();
ruofei.name = "ruofei";
ruofei.year = 1992;
ruofei.a = false;
document.write(ruofei.name);
document.write(ruofei.year);
document.write(ruofei.a);
输出结果:ruofei1992false
可以看到对象的调用方法直接输出对象名.值
即可,而数组则需要输出数值名[标量]
。