这次还是JS的一些基础内容。
简单列举下HTML中嵌入JS的几种常用方法:
(1)通过script元素定义客户端脚本或通过link标签的src属性指定外部JS资源放在事件处理程序中。
(2)当URL使用特殊的"JavaScript:协议"时,可作为URL的主体嵌入HTML中(这里涉及JavaScript伪协议的概念)。
(3)利用JS的document.write()方法写入JS代码。
(4)利用Ajax异步获取JS代码并执行。
JS语法基本要素:
(1)代码区分大小写。
(2)变量不区分类型(均使用var声明)。
(3)每条功能性语句必须以分号结尾。
(4)代码段需封闭。
JS数据类型:
(1)JS中有九种数据类型,分别是未定义类型(Undefined)、空类型(Null)、布尔型(Boolean)、字符串类型(String)、数值类型(Number)、对象(Object)、引用(Reference)、列表(List)以及完成(Completion)。其中引用(Reference)、列表(List)与完成(Completion)一般作为JS运行时产生的中间结果的数据类型,不能直接使用。
(2)JS中只有一种数值类型,使用64位浮点数(相当于double)。
(3)JS数组的数据类型可以是整形、字符串、对象。JS中数组只能是一维的,但可以通过相互嵌套实现多维数组的功能。数组可以通过构造函数、直接赋值等方式定义。
构造函数的定义:
var aArray=new Array();//声明可以不指定数组中元素的个数 var bArray=new Array(4); var cArray=new Array("One","Two","Three");//定义与初始化可以一起给出
数组直接赋值:
var aArray=["One","Two","Three"];
(4)ECMAScript中Boolean、Number和String类型均有toString()方法。其中Boolean型只能被转换成"true"或"false"(由值决定)。Number类型含有两种模式的toString()方法。
Number类型toString()的默认模式下任何表示法均返回十进制表示的数字:
var aNum=10; var bNum=10.0; alert(aNum.toString());//输出10 alert(bNum.toString());//输出10
Number类型toString()的基模式可以使用不同的基输出不同进制的数字:
var aNum=10; alert(aNum.toString(2));//输出1010
数组同样具有toString()方法(Array.toString()),同时还具有一些特殊的方法来对数组进行操作。
1、shift()方法:删除数组中第一个元素并返回其值。
2、unshift()方法:向数组头部添加一个或多个元素并返回数组新的长度。
3、push()方法:向数组末尾添加一个或多个元素并返回新的长度。
4、concat()方法:用于连接两个或多个数组(但不会改变原有的数组,而是返回一个新的数组)。
JS中有一些关键字与保留字是不可用于变量/函数命名的。
JS中同样存在条件/循环结构(与C/C++基本一致),但多一个for...in语句,其结构如下:
for(变量 in 对象) { //执行的代码 };
其中变量可以是数组元素或对象的某个属性。for...in一般用于遍历数组或对象的属性。
for...in遍历对象的属性:
var per={name:"Tom",age:18}; for (x in per) { txt=txt + person[x];//输出"Tom18" };
for...in遍历数组的元素:
var x var mycars = new Array() mycars[0] = "Saab" mycars[1] = "Volvo" mycars[2] = "BMW" for (x in mycars) { document.write(mycars[x] + "") };