您的位置:首页 > Web前端 > JavaScript

Javascript(二)-07-(常见对象-Array-基本功能)

2015-08-20 15:47 543 查看
【JavaScript中的Array对象】

1.描述:提供对创建任何数据类型的数组的支持。

2.语法:

new Array()

new Array(size),其中size是数组的大小。由于数组的下标是从零开始,创建的元素的下标将从零到 size -1。

new Array(element0, element1, ..., elementn) :要放到数组中的元素。这将创建具有 n + 1 个元素的长度为 n 的数组。

【代码】

<html>

<head>

</head>

<body>

<script type="text/javascript">

//演示数组

var arr = {"nbc","haha","cba","aaa","abc"};

//【Array中的concat方法】返回一个新数组,这个新数组是由两个数组组合而成的。

var arr2 = {"qq","xiaoqiang",90};

document.write(arr);//nba,haha,cba,aaa,abc

document.write(arr2);//qq,xiaoqiang,70

//在arr数组上连接一个元素"mm",再连接一个arr2数组

var newArr = arr.concat("mm",arr2);

document.write(newArr);//nba,haha,cba,aaa,abc,mm,qq,xiaoqiang,70

//所以concat方法是将mm和arr2中的元素都作为新数组的元素

//===========================================================================

//【Array中的join方法】返回一个 String 对象,这个字符串对象是由整个数组的所有元素连接在一起而形成的。

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr.join());//nba,haha,cba,aaa,abc——这个跟toString()没什么区别

document.write(arr.join(","));//nba,haha,cba,aaa,abc——这个跟上一行没区别

document.write(arr.join("-"));//nba-haha-cba-aaa-abc

//所以join方法可以修改数组作为字符串输出时候的元素之间的连接符

//【自己模拟一个join方法】

function myJoin(arr,separator){

var str = "";

for(var x=0;x<arr.length;x++){

if(x!=arr.lenght-1)

str += arr[x]+separator;

else

str += arr[x];

}

return str;

}

//===========================================================================

//【Array中的pop方法】将数组中最后一个元素删除并返回该元素

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

document.write(arr.pop());//abc

document.write(arr);//nba,haha,cba,aaa

//===========================================================================

//【Array中的push方法】将新元素添加到数组中,并返回数组的新长度值

//注意,如果是将数组添加到数组中,那么就是二维数组,如var arr = [ [1,1,1],[2,2,2],[3,3,3] ];

//如已有三个数组arr1,arr2,arr3,之后arr.push(arr1,arr2,arr3),那么数组arr中的形式就是[ [arr1],[arr2],[arr3] ]

//此时arr1,arr2,arr3作为3个元素存入数组arr中,形成二维数组

//===========================================================================

//【Array中的reverse方法】将数组反转

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

document.write(arr.reverse());//abc,aaa,cba,haha,nba

//===========================================================================

//【Array中的shift方法】移除数组中第一个元素并返回该元素

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

document.write(arr.shift());//nba

document.write(arr);//haha,cba,aaa,abc——已删除

//===========================================================================

//【Array中的slice方法】返回一个数组的一段,注意这个方法不会报“数组角标越界”的错误,其内有2个参数:

arrayObj.slice(start, [end]),其中start是必选项。arrayObj 中所指定的部分的开始元素是从零开始计算的下标;

end是可选项。arrayObj 中所指定的部分的结束元素是从零开始计算的下标。

slice 方法一直复制到 end 所指定的元素,但是不包括该元素。如果end 值为负,那就说明 end 是从 arrayObj 结尾计算的

偏移量。此外,它不是从零开始计数的。如果省略了这个值,那么 slice 方法将一直复制到 arrayObj 的结尾。

在下面这个例子中,除了最后一个元素之外,myArray 中所有的元素都被复制到 newArray 中:

newArray = myArray.slice(0, -1)

//===========================================================================

//【Array中的sort方法】返回一个元素已经进行了排序的 Array 对象。

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

arr.sort();

document.write(arr);//aaa,abc,cba,haha,nba

//===========================================================================

//【Array中的splice方法】删除数组中元素,并对被删除元素进行替换

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

var temp = arr.splice(1,3,8080,9527,"xixixi","wangcai");

document.write(temp);//haha,cba,aaa

document.write(arr);//nba,8080,9527,xixixi,wangcai,abc

//发现splice方法删除角标1-3的3个元素,并在其位置添加4个新元素8080,9527,xixixi,wangcai

//===========================================================================

//【Array中的unshift方法】将指定的元素插入数组开始位置并返回该数组

var arr = {"nba","haha","cba","aaa","abc"};

document.write(arr);//nba,haha,cba,aaa,abc

document.write(arr.unshift("uuuu"));//uuuu,nba,haha,cba,aaa,abc

//【注】shift是删除第一个元素,unshift是添加第一个元素

</script>

</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: