数组相关知识(轻松玩转js数组)

数组

1、Js中的数组的长度是可以自动增长的

2、Js中的数组的功能相当于Java中的数组和集合的综合

3、var arr=[3,2,-4,78,10];//正确,注意,Java赋初值用的是大括号,而Js用的是中括号

var arr[]=[3,2,-4,78,10];//错误的,不能声明成arr[]—-声明时不能带中括号

4、遍历数组

<script type="text/javascript">arr[0]=100;arr[5]=-1;//alert(arr.length);//6//遍历数组for(var x=0; x<arr.length; x++){document.write("arr["+x+"]="+ arr[x] +" ");}//输出:arr[0]=100 arr[1]=undefined arr[2]=undefined arr[3]=undefined arr[4]=undefined arr[5]=-1 </script>

5、Js中的数组当中可以存储不同数据类型的数据

<script type="text/javascript">var arr = [34, 56, -1, 100];arr[1] = -1;arr[2] = true; //语法上是可以的,因为它有集合的特性,各种类型的数据都可以赋给它。arr[6] = "Java";//虽然这样,但我们做项目时,一个数组最好放同一种类型的数据。//遍历数组for (var x = 0; x < 8; x++) {document.write("arr[" + x + "]=" + arr[x] + " ");}//输出:arr[0]=34 arr[1]=-1 arr[2]=true arr[3]=100 arr[4]=undefined arr[5]=undefined arr[6]=Java arr[7]=undefined</script>注:语法上是可以的,因为它有集合的特性,各种类型的数据都可以赋给它。虽然这样,但我们做项目时,一个数组最好放同一种类型的数据。

6、Js中数组的另一种定义方式:使用js当中的Array对象

注:用Array对象定义数组时,参数为1时,是指数组的长度;若大于1时,直接就是数组中的元素初值

var arr2 = new Array(5); //定义长度为5的数组—-参数为1时,是长度

var arr3 = new Array(5, 6, 7); //参数大于1时,就是元素的初值

7、Js中Array对象中的方法

1)concat 方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。

2)join 方法:返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。

3)reverse 方法:返回一个元素顺序被反转的 Array 对象。

4)shift 方法: 移除数组中的第一个元素并返回该元素。—–removeFirst()

5)slice 方法 (Array): 返回一个数组的一段。—–类似String中的substring()

6)sort 方法: 返回一个元素已经进行了排序的 Array 对象。

7)splice 方法: 替换。从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。

8)unshift 方法:将指定的元素插入数组开始位置。返回值为新数组的长度—-addFirst()

例1:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ""><html><head><title>Array Object Demo</title></head><body><script type="text/javascript" src="..\js1\stringtool.js"></script><script type="text/javascript">var arr = ["aa", "bb", "cc", "zz", "kk"];println(arr.toLocaleString());var arr2 = [123, "csdn", true];var newArr = arr.concat(arr2);//演示concat方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。println(("length:" + newArr.length).fontcolor("red"));println("<hr/>演示join方法:返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。");println(arr.join());println(arr.join("-"));println("<hr/>reverse 方法:返回一个元素顺序被反转的 Array 对象。");println(arr);println(arr.reverse());println(arr);println("<hr/>shift 方法: 移除数组中的第一个元素并返回该元素。—–removeFirst()");println(arr);println(arr.shift());println(arr);println("<hr/>slice 方法 (Array): 返回一个数组的一段。—–类似String中的substring()");println(arr);println(arr.slice(1, 3));println("<hr/>sort 方法: 返回一个元素已经进行了排序的 Array 对象。");arr.sort();println(arr);println("<hr/>splice 方法: 替换。从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。");println(arr);var temp = arr.splice(1, 3, "111", "2222", "3333", "444a", 100);//把从[1,3)范围内的元素移除,并且在该位置插入新的元素(后面的那些元素)。返回的是被移除的那些元素println("temp: " + temp);println("arr: " + arr);println("<hr/>unshift 方法:将指定的元素插入数组开始位置。返回值为新数组的长度—-addFirst()");println(arr);println(arr.unshift("abc123"));println(arr);</script></body></html>stringtool.js

// 模拟Java当中的System.out.print()function print(str){document.write( str);}// 模拟Java当中的System.out.println()function println(str){document.write( str +"<br>");}例2:用array做队列和栈

<!DOCTYPE HTML><html><head><title>Array Object Demo</title></head><body><script type="text/javascript" src="..\js1\stringtool.js"></script><!–用array做队列和栈–><script type="text/javascript">//栈(加时,加到尾部;出时,,也出尾部元素)//入栈,用自己封装的addLast()方法Array.prototype.addLast=function(element){this[this.length]=element;}Array.prototype.removeFisrt=function(){ //出队列,用自己的removeFirst()方法—-其实是shift()return this.shift();}Array.prototype.removeLast=function(){//出栈,用自己封装的removeLast()方法—-其实就是pop()return this.pop();}</script></body></html>

版权声明:本文为博主原创文章,未经博主允许不得转载。

终究还是会从指缝中一滴一滴流淌干净。

数组相关知识(轻松玩转js数组)

相关文章:

你感兴趣的文章:

标签云: