主要内容包括JavaScript的语法、变量、数据类型
3.1 JavaScript的语法
3.1.1. 代码执行顺序
- JavaScript 程序按照在 HTML 文件中出现的顺序逐行执行。
- 如果需要在整个 HTML 文件中执行。最好将其放在 HTML 文件的 <head>…</head> 标签当中。
3.1.2. 区分大小写
JavaScript对字母大小写敏感,而HTML不区分大小写。
3.1.3. 分号与空格
- 在 JavaScript 语句当中,分号是可有可无的。但每条语句应以分号结尾,增强可读性。
- JavaScript 会忽略多余的空格,用户可以向脚本添加空格来提高其可读性。
3.1.4. 代码折行标准
当一段代码比较长时,用户可以在文本字符串中使用反斜杠对代码行进行换行。
下面的例子会正确地显示:
document.write("Hello \
World!");
不过,用户不能像这样折行:
document.write \
("Hello World!");
3.1.5. 注释语句
- 单行注释
//注释内容
- 多行注释
/*
注释内容
*/
3.2 JavaScript的变量
变量是用来临时存储数值的容器。在程序中,变量存储的数值是可以变化的,变量占据一段内存,通过 变量的名字可以调用内存中的信息。
3.2.1 变量的声明
- 尽管 JavaScript是一种弱类型的脚本语言,变量可以在不声明的情况下直接使用,但在实际使用过程中, 最好还是先使用 var 关键字对变量进行声明。
- 声明变量具有如下几种规则:
- 可以使用一个关键字 var 同时声明多个变量,如语句“var x,y;”
- 可以在声明变量的同时对其赋值(称为初始化),例如“var president = "henan";
- 如果出现重复声明的变量,且该变量已有一个初始值,则此时的声明相当于对变量重新赋值。 JavaScript会根据存放信息的类型,自动为变量分配合适的数据类型。
- 如果只是声明了变量,并未对其赋值,其值默认为 undefined。
- var 语句可以用作for 循环和for……in 循环的一部分,这样可以使得循环变量的声明成为循环语法自身的一部分,使用起来较为方便。
3.2.2 变量的作用域
全局变量:全局变量的作用域是全局性的,即在整个 JavaScript 程序中,全局变量处处都存在。
局部变量:局部变量是函数内部声明的,只作用于函数内部,其作用域是局部性的;函数的参数也是局部性的,只在函数内部起作用。 声明局部变量,一定要用var语句。
- 在函数内部,局部变量的优先级高于同名的全局变量。也就是说,如果存在与全局变量名称相同的局部变量,或者在函数内部声明了与全局变量同名的参数,则该全局变量将不再起作用。
- JavaScript没有块级作用域,函数中的所有变量无论是在那里申明的,在整个函数中都有意义。
3.3 JavaScript的数据类型
9种:未定义(Undefined)、空(Null)、布尔型(Boolean)、字符串(String)、数值(Number)、对象(Object)、引用(Reference)、列表(List)和完成(Completion)。 其中,后 3 种类型仅仅作为JavaScript 运行时中间结果的数据类型,因此不能在代码中使用。
3.3.1 未定义类型
- Undefined 是未定义类型的变量,表示变量还没有赋值,如“var a;”,或者赋予一个不存在的属性值, 如 var a=String.notProperty。
- 此外,JavaScript 中有一种特殊类型的数字常量NaN,表示“非数字”,当在程序中由于某种原因发生计算错误后,将产生一个没有意义的数字,此时 JavaScript 返回的数字值就是 NaN。
3.3.2 空类型
- JavaScript 中的关键字null 是一个特殊的值,表示空值,用于定义空的或不存在的引用。
- 不过,null 不等同于空的字符串或0。由此可见,null 与 undefined 的区别是:null 表示一个变量被赋予了一个空值,而 undefined 则表示该变量还未被赋值。
3.3.3 布尔型
- 布尔型数据类型只有两个值:true 和 false
3.3.4 字符串
- 字符串必须放在单引号或者双引号里
- JavaScript 字符串定义方法如下:
方法一:
var str = "字符串";
方法二:
var str = new String("字符串");
- +将两个字符串连接在一起
- 变量名.length获取字符串长度
- 变量名.charAt(位置):获取字符串该位置上的字符
- 字符串的大小写转换:
- 以小写方式显示:变量名.toLowerCase()
- 以大写方式显示:变量名.toUpperCase()
- 按照本地方式把字符串转化为小写:变量名.toLocaleLowerCase()
- 按照本地方式把字符串转化为大写:变量名.toLocaleUpperCase()
3.3.5 数值类型
等同于Java中的double类型
5、12、-5、123e5(=12300000)
3.3.6 对象类型
Object 是对象类型,该数据类型中包括Object、Function、String、Number、Boolean、Array、Regexp、 Date、 Globel、Math、Error,以及宿主环境提供的 Object 类型。
<!DOCTYPE html>
<html>
<body>
<script type="text/javascript">
person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";
document.write(person.firstname + " is " + person.age + " years old.");
</script>
</body>
</html>
典型案例——九九乘法表
<!DOCTYPE html>
<html>
<head>
<title>New Document</title>
</head>
<body>
<script language="JavaScript" >
/*
程序功能:打印九九乘法表
建立日期:2020年7月29日
*/
label1:for(var i=1;i<=9;i++){
document.write("<br>");
for(var j=1;j<=9;j++){
if(j>i){
continue label1;
}
document.write(i+"x"+j+"="+i*j+" ");
}
}
</script>
</body>
</html>

- 可以用标号label标出想退出(continue或break)哪一个语句
- 在html代码中每输入一个转义字符 就表示一个空格,输入十个 ,页面中就显示10个空格位置。而在html代码中输入空格,不管输入多少个空格,最终在页面中显示的空格位置只有一个。
网友评论