主页 > 专题教程 > javascript > js基础 >
来源:自学PHP网 时间:2018-02-08 10:24 作者: 阅读:次
[导读] 在JavaScript中,所有的一切都是对象,为了便于开发工作,JavaScript提供了处理字符串、数学运算、日期和时间、正则表达式和数值等一系列的内置对象,它们都遵从ECMAScript1.0规范,因此...
|
在JavaScript中,所有的一切都是对象,为了便于开发工作,JavaScript提供了处理字符串、数学运算、日期和时间、正则表达式和数值等一系列的内置对象,它们都遵从ECMAScript1.0规范,因此在所有平台下这些对象的功能和表现都是一样的。 数组是一种具有相同类型值的集合,它的每一个值称为数组的一个元素。数组用于在内存中存储大量相同类型的数据,可以通过数组的名称和下标来访问数组中的元素。 数组的下标也称为索引值,有两种类型的索引值:非负整数和字符串索引值。使用字符串索引值的数组又称为关联数组。数组是JavaScript的一种内置对象。 和其它变量一样,数组在使用之前需要声明,即创建数组对象。声明数组的语法有三种形式:
var arr = new Array();
var arr = new Array(n);
var arr = new Array(e0,e1,e2,...e(m));
第一种声明形式声明了一个空的数组,它的元素个数为0;第二种声明形式声明了一个有n个元素的数组,但每一个元素的值还没有定义;第三种声明形式声明了有m个元素的数组,它的各个值依次为e0,e1,e2,...e(m)。例如:
var arr1 = new Array(); //创建一个空数组
var arr2 = new Array(100); //创建有100个元素的数组
var arr3 = new Array("red","blue","green",1,2,3);//创建有6个值得数组
JavaScript的数组是动态数组,在声明数组的时候,无论是否指定了数组的元素个数,都可以根据需要调整元素的数量。JavaScript按需要分配内存,动态扩展和压缩数组。数组元素通过下标来访问,下标放在放括号 和其它编程语言不同的是,JavaScript数组可以存储任何类型的的值,也就是说,数组中第一个元素可以存储数值,第二个元素可以存储字符串类型的值,第三个元素可以存储对象等等。 在JavaScript中,可以使用字符串来作为数组的下标来访问数组。通过字符串下标来访问数组称为关联数组。字符串下标通常称为键。下面是一个例子:
var states = new Array();
states["京"] = "北京市";
states["翼"] = "河北省";
states["豫"] = "河南省";
states["粤"] = "广东省";
states["闽"] = "福建省";
数组是JavaScript中的一个对象,它有一组属性和方法。下表是数组的属性:
其中最常用的是 数组提供了12个有用的方法,利用这些方法可以使用数组实现栈操作、数组元素排序、颠倒数组元素、将数值拼接为一个字符串等。下表中列出了这些方法:
下面是上面常用函数的一些应用示例。 concat()方法应用示例
/********** concat() ***********/
var arr1 = new Array("红色","蓝色","绿色");
var arr2 = new Array("粉红色","紫色");
var arr3 = arr1.concat(arr2);
document.write(arr3); //合并后的数组arr3为:红色,蓝色,绿色,粉红色,紫色
join()方法应用示例
/********** join() ***********/
var arr1 = new Array("红色","蓝色","绿色");
var arr2 = new Array("粉红色","紫色");
var arr3 = arr1.concat(arr2);
document.write(arr3.join("-"));//合并后的数组arr3调用join()方法的结果为:红色-蓝色-绿色-粉红色-紫色
push()方法应用示例
/********** push() ***********/
var arr = new Array("红色","蓝色","绿色");
arr.push("粉红色","紫色");
document.write(arr); //调用push方法后数组的值为:红色,蓝色,绿色,粉红色,紫色
pop()方法应用示例
/********** pop() ***********/
var arr = new Array("红色","蓝色","绿色");
var value = arr.pop();
document.write(arr); //调用pop方法后数组的值为:红色,蓝色
alert("返回的值为:"+value); //返回的值为:绿色
shift()方法应用示例
/********** shift() ***********/
var arr = new Array("红色","蓝色","绿色");
var value = arr.shift();
document.write(arr); //调用shift方法后数组的值为:蓝色,绿色
alert("返回的值为:"+value); //返回的值为:红色
unshift()方法应用示例
/********** unshift() ***********/
var arr = new Array("红色","蓝色","绿色");
arr.unshift("粉红色","紫色");
document.write(arr); //调用unshift方法后数组的值为:粉红色,紫色,红色,蓝色,绿色
sort()方法应用示例
/********** sort() 默认排序 ***********/
var arr = new Array("2","11","1","25","12","90","36","28","100");
arr.sort();
document.write(arr); //调用默认sort方法后数组的值为:1,100,11,12,2,25,28,36,90
上面使用的是默认的排序方式。默认方式下,数组以ASCII值的大小来进行排序。我们可以自定义排序的方法,如果需要按照数字的大小来排序,可以像下面这样:
/********** sort() 自定义排序 ***********/
function mysortfunc(str1,str2){
return parseInt(str1) - parseInt(str2);
}
var arr = new Array("2","11","1","25","12","90","36","28","100");
arr.sort(mysortfunc);
document.write(arr); //调用自定义sort方法后数组的值为:1,2,11,12,25,28,36,90,100
reverse()方法应用示例
/********** reverse() ***********/
var arr = new Array("2","11","1","25","12","90","36","28","100");
arr.reverse();
document.write(arr); //调用reverse方法后数组的值为:100,28,36,90,12,25,1,11,2
slice()方法应用示例
/********** slice() ***********/
var arr = new Array("Sun","Mon","Tues","Wed","Thurs","Fri","Sat");
var sliceArr = arr.slice(1,3); //从下标1开始,截取到下标为3的元素,不包括下标为3的元素
document.write(sliceArr); //调用slice方法后数组的值为:Mon,Tues
splice()方法应用示例
/********** splice() ***********/
var arr = new Array("Sun","Mon","Tues","Wed","Thurs","Fri","Sat");
arr.splice(1,3,"星期一","星期二","星期三");//从下标1开始,删除3个元素,并将后面参数指定的元素插入到删除的位置
document.write(arr); //调用slice方法后数组的值为:Sun,星期一,星期二,星期三,Thurs,Fri,Sat
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com