<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数组操作函数是编程中非常基础且重要的部分,它们提供了对数组进行各种操作的方法,包括添加、删除、合并以及转换等。以下是对标题和描述中提及的数组操作函数的详细说明: 1. **push()**: `push()` 函数...
JavaScript 数组使用调用方法汇总 JavaScript 数组是一种重要的数据结构,用于存储和操作多个值。数组提供了多种方法来操作和处理数组元素,这些方法可以分为以下几类:添加元素、删除元素、排序、查找、转换等。 ...
JavaScript数组使用方法汇总: JavaScript是一种无类型(或称为动态类型)的脚本语言,它的数组可存储任意类型的数据元素。这种特性意味着同一个数组可以包含多种数据类型,例如字符串、数字、布尔值等,甚至可以将...
这篇文章将汇总JavaScript数组的一些常用操作技巧,帮助开发者更好地理解和利用数组功能解决问题。 ### 一、数组的性质 在JavaScript中,数组本质上是特殊的对象,其属性是通过偏移量的索引来表示的。虽然我们可以...
JavaScript数组排序汇总主要涉及到四种经典的排序算法:冒泡排序、快速排序、插入排序和希尔排序。这些算法在处理数组时有着不同的效率和应用场景。 1. **冒泡排序**(Bubble Sort): 冒泡排序是一种简单的排序...
在JavaScript中,数组是一种非常灵活的数据结构,提供了...以上方法涵盖了JavaScript数组操作的常用场景,如元素合并、排序、提取和数组结构的变更等。掌握这些方法可以帮助开发者高效地编写代码,对数组进行各种操作。
本文将详细解析两种JavaScript数组去重的方法,并提供一些额外的在线工具供参考。 ### 方法一:使用`indexOf()`方法 这种方法基于`indexOf()`函数来检测数组中的元素是否已经存在。`indexOf()`返回指定元素在数组...
本文为大家总结了javascript数组常用方法,具体内容如下 1、join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串。也可以指定可选的字符串在生成的字符串中来分隔...
在JavaScript中进行数组去重是一个频繁遇到的编程需求,特别是在处理大量数据时,去除重复元素能够帮助我们避免数据冗余,提高数据处理效率。常见的数组去重方法包括但不限于以下几种: 1. 使用indexOf()方法 在该...
JavaScript数组的创建、元素访问和操作都是基于其提供的方法,以下是一些JavaScript数组方法的详细知识点汇总: 1. 数组的创建 - 使用关键字`new Array()`可以创建一个新数组。例如,`var name = new Array();`...
在JavaScript编程语言中,数组是一种非常重要的数据结构,它用于存储多个值,并提供了一系列高效的操作方法。本篇文章将深入探讨JavaScript中数组的一些算法和技巧,帮助开发者更好地理解和利用这些功能。 1. 数组...
本文汇总了四种不同的JavaScript数组去重的方法,下面将详细解析这些方法及其原理。 ### 第一种:基于`indexOf`的方法(`unique1`) 这种方法利用`Array.prototype.indexOf()`方法来检查数组中是否存在重复元素。`...
reduce方法可以用来将数组元素汇总到一个单一的返回值,通过递归累加每个元素的处理结果,最终得到扁平化的数组。这种方法相比直接使用递归,代码更为简洁,但仍然是基于递归的思想。 文章也提到了ES6新增的扩展...