<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数组的22种必学方法,按照功能分为10类进行解析。 1. **对象继承方法** - `toString()`:将数组转换为以逗号分隔的字符串。例如,`[1,2,3].toString()`返回`'1,2,3'`。在`alert()`等需要...
- 避免在数组方法中使用副作用,这可能导致意外行为和性能下降。 - 使用`const`声明数组,避免不必要的重新分配。 5. 实现常见算法 - 查找最大值/最小值:`Math.max.apply(null, arr)` 和 `Math.min.apply(null,...
JavaScript 数组使用调用方法汇总 JavaScript 数组是一种重要的数据结构,用于存储和操作多个值。数组提供了多种方法来操作和处理数组元素,这些方法可以分为以下几类:添加元素、删除元素、排序、查找、转换等。 ...
JavaScript数组使用方法汇总: JavaScript是一种无类型(或称为动态类型)的脚本语言,它的数组可存储任意类型的数据元素。这种特性意味着同一个数组可以包含多种数据类型,例如字符串、数字、布尔值等,甚至可以将...
JavaScript数组操作函数是编程中非常基础且重要的部分,它们提供了对数组进行各种操作的方法,包括添加、删除、合并以及转换等。以下是对标题和描述中提及的数组操作函数的详细说明: 1. **push()**: `push()` 函数...
本文将详细解读JavaScript中数组相关的方法,涵盖了数组元素的增删改查等多个方面,是前端开发者在处理数组时的重要参考资料。 1. 添加和删除元素 - push:在数组的末尾添加一个或多个元素,并返回新的长度。 - ...
在JavaScript编程中,数组去重是一项常见的操作,特别是在处理数据集合...以上内容旨在帮助您理解和掌握JavaScript数组去重的方法,以及提高在实际开发中的效率。在实践中,可以根据数据规模和性能需求选择合适的方法。
JavaScript数组的`length`属性表示数组的长度,是动态的。当增加或减少数组元素时,`length`会自动更新。需要注意,改变`length`属性可以直接缩短或延长数组,但不会自动清理超出范围的旧元素。 总之,JavaScript中...
除了`slice()`,JavaScript数组还有很多其他常用的操作方法: - `push()`:向数组的末尾添加一个或多个元素,并返回新的长度。例如,`arr.push('g')`将把`'g'`添加到`arr`的末尾,使`arr`变为`["a", "b", "c", "d",...
在JavaScript中进行数组去重是一个频繁遇到的编程需求,特别是在处理大量数据时,去除重复元素能够帮助我们避免数据冗余,提高数据处理效率。常见的数组去重方法包括但不限于以下几种: 1. 使用indexOf()方法 在该...
这篇文章将汇总JavaScript数组的一些常用操作技巧,帮助开发者更好地理解和利用数组功能解决问题。 ### 一、数组的性质 在JavaScript中,数组本质上是特殊的对象,其属性是通过偏移量的索引来表示的。虽然我们可以...
本文将汇总Javascript中数组的基本方法,供需要的读者参考。 首先,Array.prototype中定义了很多操作数组的方法,我们从ECMAScript3中的一些方法开始介绍。 1. Array.join()方法: 此方法将数组中的所有元素转换为...
本文汇总了四种不同的JavaScript数组去重的方法,下面将详细解析这些方法及其原理。 ### 第一种:基于`indexOf`的方法(`unique1`) 这种方法利用`Array.prototype.indexOf()`方法来检查数组中是否存在重复元素。`...
本文为大家总结了javascript数组常用方法,具体内容如下 1、join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串。也可以指定可选的字符串在生成的字符串中来分隔...