页面嵌入:
HTML页面代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript"> alert("你好!");
</script>
</head>
<body>
</body>
</html>
外部引用:
HTML页面代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="JScript1.js"></script>
</head>
<body>
</body>
</html>
Jscript页面代码如下:
alert("你好!");
事件1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<a href="javascript:alert('你好!')">点点</a>
</body>
</html>
同时,不同于C#(单引号表示char类型,双引号表示string类型),在JavaScript中不区分单引号和双引号。
直接在超链接中引用JavaScript代码。这样做比较特殊,它需要在使用alert()之前,加一个javascript:。
事件2:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<a href="http://www.baidu.com" onclick="alert('您好!')">点点</a>
</body>
</html>
定义变量:
var i=10;
i="abc";
定义函数:
function add(i1,i2){
return i1+i2;
}
由于JavaAcript是弱类型的语言,所以他的函数声明没有返回值类型,它的参数也不用声明类型。
匿名函数:
<script type="text/javascript">
var f1 = function (i1, i2) { alert(i1 + i2); };
f1(2, 3);
</script>
这里的变量f1的作用类似于C#中的委托类型。
下面来看一个很奇怪的匿名函数的用法,这种用法在JQuery中会经常用
<script type="text/javascript"> alert(function (i1, i2) { return i1 + i2; } (10, 2));
</script>
直接在匿名函数后面传入实参的值,直接使用。
在JavaScript中定义一个对象,可以简单的把它理解为C#中的自定义的类。(但它的实质其实是对象而不是类):
<script type="text/javascript">
function Person(name, age) {
this.name = name;
this.age = age;
this.SayHello=function(){
alert("你好,"+this.name+"你的年龄是:"+this.age);
}
}
var p1=new Person("wang",30);
p1.SayHello();
</script>
Array数组:
<script type="text/javascript">
var name = new Array();
name[0] = "wang";
name[1] = "li";
name[2] = "long";
for (var i = 0; i < name.length; i++) {
alert(name[i]);
}
</script>
JavaScript中的数组是动态的,不用预先定义数组的大小。
实例:求一个Array数组中最大的值
<script type="text/javascript">
function maxNumber(arr) {
var max = arr[0];
for (var i = 0; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
var arr = new Array();
arr[0] = 10;
arr[1] = 9;
arr[3] = 20;
alert(maxNumber(arr));
</script>
实例:将一个Array数组按照指定格式输出
<script type="text/javascript">
var arr = new Array();
arr[0] = "张三";
arr[1] = "李四";
arr[2] = "王五";
function MyJoin(arr) {
var str = "";
for (var i = 1; i < arr.length; i++) {
str += "|" + arr[i];
}
str = arr[0] + str;
alert(str);
}
MyJoin(arr);
</script>
实例:将一个Array数组中元素逆序输出
<script type="text/javascript">
var arr = new Array();
arr[0] = "张三";
arr[1] = "李四";
arr[2] = "王五";
function MyReverse(arr) {
for (var i = 0; i < arr.length / 2; i++) {
var temp = arr[i];
arr[i] = arr[arr.length - i - 1];
arr[arr.length - i - 1] = temp;
}
alert(arr);
}
alert(arr);
MyReverse(arr);
</script>
JavaScript中的Array数组功能非常强大,它可以实现类似C#中Dictionary之类的集合的功能。
<script type="text/javascript">
var arr = new Array();
arr["人"] = "嘎嘎";
arr["水"] = "哈哈";
arr["天"] = "啦啦";
for (var a in arr) {
alert(a);
}
for (var a in arr) {
alert(arr[a]);
}
</script>
可以使用非整型元素作为数组的键。
使用类似C#的foreach的方法进行循环,取到的值是数组的键。
JavaScript中的Array数组简化声明方式:
<script type="text/javascript">
var arr = [3, 5, 2, 1];//功能类似于C#中的数组。这里使用的是中括号,不是C#中的大括号
var arr = { "人": "嘎嘎", "天": "哈哈", "水": "啦啦" };//功能类似于C#中的Dictionary之类的集合。使用键值对,这里使用的是大括号。
</script>