JavaScript详解(6.数组和函数)

一,数组

“数组”即一组数据的集合。

js数组更加类似java的容器。长度可变,元素类型也可以不同!

Js数组长度随时可变!随时可以修改!我们可以通过修改数组的长度清空数组。

通过array.length获得数组长度。

1.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2.<html>
3.	<head>
4.		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5.		<title>JavaScript初级</title>
6.		<script>
7.			function test(){
8.				//两种定义数组的方式
9.				var a = new Array();
10.				var a2 = [];  //更常用!
11.				
12.				//初始化方式
13.				a[0] = 123;
14.				a[1] = new Date();  
15.				
16.				var a3  =[123,"45",new Date(),true];
17.				
18.				alert(a);
19.				alert(a3.length);
20.				
21.				a3.length = 2;  //改变数组长度,清掉后面的元素!
22.				alert(a3);
23.				a3.length = 0;  //直接清空数组
24.				alert(a3);
25.			}
26.			
27.			function test2(){
28.				var a = [1,2,3,4,5];
29.				a.push("ppp");   //数组末尾添加一个项
30.				alert(a);
31.				a.pop();    //删除数组最后一个项 
32.				alert(a);
33.				a.unshift("aa");//在数组第一个元素位置添加元素
34.				alert(a);
35.				a.shift();  //删除数组第一个元素
36.				
37.			}
38.		</script>
39.	</head>
40.	<body>
41.		<input type=button value=测试  onclick="test();"  />
42.		<input type=button value=测试  onclick="test2();"  />
43.	</body>
44.</html>

二,函数

一,自定义函数

一个典型的JavaScript函数定义如下:

function 函数名称(参数表)

{

	函数执行部分:

}

注意:参数列表直接写形参名即可,不用写var!

return语句:

return返回函数的返回值并结束函数运行

return语句的语法如下:

return 表达式

当使用return语句的时候,要得到函数的返回值,只要利用函数名对一个变量赋值就可以了。

函数也是对象!

函数的另一个定义方式!

1.<html>
2.	<head>
3.		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4.		<title>尚学堂JavaScript初级</title>
5.		<script>
6.			function test(){
7.				var a = test2;  //把test2指向的函数对象引用赋值给了a
8.				a();   //执行的仍然是test2函数	
9.			}
10.			var test2 = function(){    //更能体现函数也是对象的含义!
11.//根据此种定义方式,我们可以发现test2是一个全局变量,
12.//他只想了匿名的函数对象!
13.				alert("test2");
14.			}
15.			
16.			
17.			function test3(){
18.				test4(234,test2);
19.			}
20.			
21.			function test4(a,b){
22.				alert(a);
23.				alert(b);
24.				b();   //执行b指向的函数对象!
25.			}
26.			
27.		</script>
28.	</head>
29.	<body>
30.		<input type=button value=测试  onclick="test();"  />
31.		<input type=button value=测试2   onclick="test3();"  />
32.	</body>
33.</html>

二,内置函数

函数描述
decodeURI()解码某个编码的 URI。
encodeURI()把字符串编码为 URI。
escape()对字符串进行编码。
eval()计算 JavaScript 字符串,并把它作为脚本代码来执行。
isFinite()检查某个值是否为有穷大的数。
isNaN()检查某个值是否不是数字。
Number()把对象的值转换为数字。
parseFloat()解析一个字符串并返回一个浮点数。
parseInt()解析一个字符串并返回一个整数。
String()把对象的值转换为字符串。
unescape()对由 escape() 编码的字符串进行解码。
1.<html>
2.	<head>
3.		<title>Untitled Document</title>
4.		<script>
5.			function testEval() {
6.				var a="alert('你们好')";
7.				var b="var c=0;";
8.				
9.				eval(b);  //var c=0;
10.				
11.				alert(c);
12.//				var a1 = 'alert("你们好!")';
13.//				var b="var c=11;";
14.				alert(a);
15.//				alert("你们好");
16.//				eval("var c=11;");   
17.//				var c=11;
18.//				var c=11;
19.//				alert(c);
20.			}
21.			
22.			function testParse() {
23.				var d="3.555";
24.				var e1="abd";
25.				
26.				var d1= parseFloat(d);
27.				var d2=parseInt(d);
28.				var e2=parseInt(e1);
29.				
30.//				alert(1+d);
31.//				alert(1+d1);
32.				alert(d2);
33.//				alert(1+d2);
34.//				alert(e2);
35.				
36.				if(isNaN(e2)) {
37.					alert("I'm a NaN");
38.				}
39.				
40.				if(e2!=e2) {
41.					alert("我不是我");
42.				}
43.
44.				if(isFinite(e2)) {
45.					alert("我是一个正常的number");
46.				}
47.
48.			}
49.			
50.			function testEscape() {
51.				var  str="中国";
52.				var str1 = escape(str);
53.				var str2 = unescape(str1);
54.				alert(str1);
55.				alert(str2);
56.			}
57.			
58.			function testDecode(){
59.				var myurl='http://www.baidu.com/中国';
60.				var u1=encodeURI(myurl);
61.				var u2=decodeURI(u1);
62.				alert(u1);
63.				alert(u2);
64.			}
65.			
66.		</script>
67.	</head>
68.	<body>
69.	<a href="javascript:void(0);" onclick="testEval();">测试eval方法</a>
70.	<a href="javascript:void(0);" onclick="testParse();">测试parse方法</a>
71.	<a href="javascript:void(0);" onclick="testEscape();">测试escape方法</a>
72.	<a href="javascript:void(0);" onclick="testDecode();">测试Decode方法</a>
73.	</body>
74.</html>

在 JavaScript 核心语言中,全局对象的预定义属性都是不可枚举的,所有可以用 for/in 循环列出所有隐式或显式声明的全局变量,如下所示:

1.<html>
2.<body>
3.<script type="text/javascript">
4.var variables = "";
5.for (var name in this) 
6.{
7.variables += name + "<br />";
8.}
9.document.write(variables);
10.</script>
11.</body>
12.</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值