`

javascript 中数组使用方法汇总

阅读更多
<script language="javascript">
//Author :东阁
//Date:2008-1-11
//目的: 练习数组的基本操作

/*
由于javascript是一种无类型语言,所以一个数组的元素可以具有任意的数据类型,同一个数组的不同元素
可以具有不同的类型,数组的元素设置可以包含其他数组,这样就可以创建一个复杂的数组了.
并且在这点上说javascript作为一种脚本语言不同于那种严格的面向对象的c++.c#,java了.具有更高的灵活性.
*/

/*
*在javascript1.1和其后的版本中,数组是用构造函数Array()和运算符new来创建,
可用以下的三种方式来创建javascript 中的数组.
*/
var a=new Array();
var b=new Array(5,4,3,"first","test,string");
var c=new Array(20);

a[1.23]="test";
document.write("a[1.23]="+a[1.23]);
//相信每位从强类型的编程语言学习javascript时,绝对会以为上面这种操作感到惊讶,
//float数据也作数组的下标了,事实上                       并非如您所想       
//javascript在您是用负数,浮点数,(或布尔型,对象,其他值时),javascript会将它转换为一个字符串
//用生成的字符串作为对象的属性名字,而不是定义了一个新的数组元素
//上面的实例事实就是为a 创建了一个名为:"1.23"的属性.
document.write("a.length="+a.length);
document.write("b.length="+b.length);
document.write("c.length="+c.length);

a[3]="Test";
document.write("<br />a[3]="+a[3]);
document.write("<br/>a.length="+a.length);
//以上测试也很明确我们用整数作为数组的下标是才会真正为数组添加一个元素,
//这里用数组的长度来体现了javascript的数组中的奥妙。


//通过设置数组的length属性能过截断数组的长度。
a.length=3;
if (a[3]==undefined)
{
  document.write("<br />在a.length="+a.length+"后,a[3]="+a[3]);
}
else
{
    document.write("<br />在a.length="+a.length+"后,a[3]="+a[3]);
}

//这里测试我们的多维数组元素
/*
*javascript中实际上是不支持多维数组
*但是我们将一个一维数组的元素再赋给其一个一维数组,这样就看起来就实现了多维数组了,但
实际上他还是个一维数组,这和我们理解c语言的数组时的那种想法一样,但他们的实现机制是不一样的。
*/
var g=new Array(3);
g[3]=a;
g[3][2]="Test"
document.write("<br />g[3][2]="+g[3][2]);
 
  //数组join()方法
  for (var i=0;i<20 ;i++ )
  {
c[i]=i;
document.write("<br />c[i]="+c[i]);
  }
  document.write("<br/>c的元素join()方法后是:"+c.join());
  //数组的reverse()方法
  c.reverse();
  document.write("<br />c的元素在reverse()方法再join()后的结果是:"+c.join("|"));

  //concat()方法的测试
  var h=new Array(1,2,3);
  h= h.concat([4,5]);
  //但是concat函数不会递归地展开一个元素为数组的数组。
  h=h.concat(6,7,[9,[10,20]]);
  document.write("<br />h.length="+h.length+"<br />"+h);
  document.write("h[8]="+h[8]);


  //slice()方法
  document.write("<br>h.slice(4,5)="+h.slice(4,5));
document.write("h.slice(5,9)="+h.slice(5,9))
//slice()方法:返回的数组包含有第一个参数指定的元素和那个元素开始到第二个参数指定的
//元素为止的元素但不包含第二个参数所指定的元素。


//splice()方法
//splice()方法是插入或删除数组元素通用的方法。
/*
splice函数第一个参数指定了要插入或删除的元素在数组中的位置。
第二个参数指定了要从数组中删除的元个数
在第二参数之后可以有任意多个参数,它们指定的是从第一个参数指定的位置处插入的元素。
第一个元素及后续元素,做出相应的移动。
*/

document.write("<br />h.splice(8,1)后的h为::"+h.splice(8,1));
//document.write("<br />h.splice(8,0,'a','b','Test')后的h为::"+h.splice(8,0,'a','b','Test'));
h.splice(7,0,'a','b','Test');
document.write("<br />h.splice(7,0,'a','b','Test')后的h为:"+h);


//javascript中的数组作为堆栈时和php类似
//这点有趣更有用。
//以下是作为堆栈是使用的小实例
/*
push方法是将一个或多个新元素附加到数组的尾部,然后返回数组的新长度。
pop将删除数组的最后一个元素,坚守数组的长度,返回他删除的值。
*/
var stack=new Array();
stack.push(1,2);
document.write("<br>stack的元素是:"+stack);
document.write("<br />stack.length="+stack.length);
document.write("<br>stack.pop()返回的结果是:"+stack.pop());
document.write("<br />stack.length="+stack.length);

//以下是作为队列使用的小实例
/*
unshift方法将一个或多个元素添加到数组元素的头部,然后把已有的元素移动到下标最大的位置已腾出空间
,它返回的是主族的新长度。
方法shift是删除并返回数组的第一个元素,然后将后面的所有元素都向前移动以填补第一个元素留下的空白。
*/
var list=[];
list.unshift(6,2);
document.write("<br >list的内容为:"+list);
document.write("<br>list的shift方法是:"+list.shift());

//此外就剩下,我们在java中熟悉的toString()方法 了
//It's a piece of cake!
document.write(c.toString());
//说白了,其实数组的toString()方法和无参数的join()的效果是完全相同
//OK,this's chapter for Array,that's all!

</script>
分享到:
评论

相关推荐

    Javascript 数组方法汇总整理

    Javascript 数组方法汇总整理

    javascript数组使用调用方法汇总

    JavaScript 数组使用调用方法汇总 JavaScript 数组是一种重要的数据结构,用于存储和操作多个值。数组提供了多种方法来操作和处理数组元素,这些方法可以分为以下几类:添加元素、删除元素、排序、查找、转换等。 ...

    JavaScript数组常用操作技巧汇总

    本文实例汇总了JavaScript数组的常用操作技巧。分享给大家供大家参考。具体如下: 前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法。这里无非是...

    javascript中数组方法汇总

    本文给大家详细汇总了一下javascript中的数组方法,十分的全面细致,有需要的小伙伴可以参考下。

    JavaScript中使用数组方法汇总

    主要介绍了JavaScript中使用数组方法汇总的相关资料,需要的朋友可以参考下

    Javascript中数组方法汇总(推荐)

    主要介绍了Javascript中数组方法汇总(推荐),需要的朋友可以参考下

    javascript数组去重方法汇总

    javascript数组去重方法汇总 Array.prototype.unique1 = function () { var n = []; //一个新的临时数组 for (var i = 0; i &lt; this.length; i++) //遍历当前数组 { //如果当前数组的第i已经保存进了临时数组...

    javascript数组常用方法汇总

    主要汇总了javascript中数组常用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    javascript删除数组重复元素的方法汇总

    本文实例讲述了javascript删除数组重复元素的方法。分享给大家供大家参考。具体分析如下: 这里分享一个前端面试高频题,主要实现javascript删除数组重复元素。希望对初学者有所帮助 //数组去重的方法 Array....

    javascript 数组使用方法汇总

    由于javascript是一种无类型语言,所以一个数组的元素可以具有任意的数据类型,同一个数组的不同元素 可以具有不同的类型,数组的元素设置可以包含其他数组,这样就可以创建一个复杂的数组了.

    JS中取二维数组中最大值的方法汇总

    在JavaScript中可以通过内置的 Math.max() 的最大值,但是要从多重数组中取出最大值,还是有一定的难度。 问题描述 假设你有一个数组,而且这个数组中包含了数字的子数组,而我们要做的是从数组中的每个子数组中返回...

    超详细的javascript数组方法汇总

    主要对javascript的数组方法进行了详细的汇总,包括了最常用的的数组方法,还有扩展方法,很全面,感兴趣的小伙伴们可以参考一下

    javascript数组去重的方法汇总

    //如果当前数组的第i已经保存进了临时数组,那么跳过, //否则把当前项push到临时数组里面 if (n.indexOf(this[i]) == -1) n.push(this[i]); } return n; } 第二种: Array.prototype.unique2 = function() ...

Global site tag (gtag.js) - Google Analytics