JS数组的用法包括创建、取值赋值、添加以及根据下标(包括数值或字符)来移除元素等等,在本文中将为大家详细介绍,感兴趣的朋友可以参考下。

1.创建数组:

//1.1直接创建一个数组对象

var array=new Array();

//1.2直接创建一个数组对象

var array=new Array(size);

//1.3创建数组并为数组赋值

var array=new Array(item1,item2,item3....,itemN);

2.对数组取值、赋值 

//2.1取得下标为index的元素
var item=array[index];
//2.2为下标为index的元素赋值为value
array[index]=value;

3.对数组添加元素

//3.1将一个或多个元素加入到数组,返回数组的长度

array.push(item1,item2……itemN); 

//3.2将一个或多个元素加入到数组的开始位置,原有元素位置自动后移,返回新数组的长度

array.unshift(item1,item2……itemN); 

//3.3从start的位置开始向后删除delCount个元素,然后从start的位置开始插入一个或多个新元素

array.splice(start,delCount,item1,item2……itemN);  

4.删除数组的元素

//4.1删除最后一个元素,并返回该元素

array.pop();

//4.2删除第一个元素,数组元素位置自动前移,返回被删除的元素

array.shift();

//4.3从start的位置开始向后删除delCount个元素,所以通过下标来删除元素可以用这种方式。如:array.splice(0,1);0代表第0个元素,1代表从这个下标开始算起,删除一个元素。

array.splice(start,delCount);  

5.数组的截取与合并

//5.1以数组的形式返回数组的一部分,注意不包括end下标的元素,如果省略了end,就会赋值start之后的所有元素

array.slice(start,end);

//5.2将多个数组合并成一个数组

array.concat(array1,array2); 

6.数组的排序

var arr=[2,3,1,4,5];

//6.1对arr进行升序排序,结果为12345

arr.sort();

//6.2对arr进行降序排序,结果为54321

//有以下两种方式:

//6.2.1先升序排列,再反转数组

//6.2.2直接使用sort()方法,传入一个判断的匿名函数进行倒序排列

arr.sort(function(p,n){

  return n-p;//降序

  //return p-n;//升序

});    

7.数组的反转

var array=[3,2,1,4,5];
var newArr=array.reverse();//得到5,4,1,2,3

8. 数组转字符串

var array=[1,2,3,4,5];
var str=array.join('|');//得到1|2|3|4|5

9.使用数组来实现队列和栈

因为队列是先进先出,栈先进后出。如下图所示:

接下来,我们使用数组来实现这两种。

    //先来实现队列

    var arr=new Array();

    arr.push("");

    arr.push("");

    arr.push("");

    arr.push("");

    var count=arr.length;

    var res='';

    for(var i=;i<count;i++){

        res+=arr.shift()+" length="+ arr.length+"\n";

    }

    document.write(res);//结果为1 length=3 2 length=2 3 length=1 4 length=0

然后实现先进后出的方式:

    var arr=new Array();

    arr.unshift("");

    arr.unshift("");

    arr.unshift("");

    arr.unshift("");

    var count=arr.length;

    var res='';

    for(var i=;i<count;i++){

        res+=arr.shift()+" length="+ arr.length+"\n";

    }

    document.write(res);//结果为4 length=3 3 length=2 2 length=1 1 length=0

JS数组的基本用法的更多相关文章

  1. js数组的基本用法及数组根据下标(数值或字符)移除元素

    1.创建数组 var array = new Array(); var array = new Array(size);//指定数组的长度 var array = new Array(item1,it ...

  2. JS中数组Array的用法{转载}

    js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^var arr = new Array();arr[0] = "aaa";arr[1] ...

  3. JS中数组Array的用法示例介绍 (转)

    new Array() new Array(len) new Array([item0,[item1,[item2,...]]] 使用数组对象的方法: var objArray=new Array() ...

  4. JS中数组Array的用法

    js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了. var arr = new Array();  // 初始化数组arr[0] = "aaa";arr[1] = ...

  5. js 数组 var arr=[] 的用法总结

    刚接触了一个js数组,用起来很头疼,总结一下 基本格式: var arr = [[name,value],[name2,value2],[name3,value3]]; 如何给 arr 动态添加元素 ...

  6. JSON用法之将PHP数组转JS数组,JS如何接收PHP数组

    先看php文件,当我们获取到$arr这个数组后 foreach ($arr as $value) { $json .= json_encode($value) . ','; } echo '[' . ...

  7. 将php数组转js数组,js如何接收PHP数组,json的用法

    首先下载下面这个文件(这是一段是别人写出来专门解析json的代码),然后引入这个文件! http://pan.baidu.com/s/1dD8qVr7 现在当我们需要用ajax与后台进行交互时,怎样将 ...

  8. 转→js数组遍历 千万不要使用for...in...

    看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...

  9. js数组操作

    用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...

随机推荐

  1. Mysql学习笔记(七)mysql编程基础之自定义函数。

    delimiter $$ create function fn_liangzifunction() returns int no sql begin ; return @row_no; end; $$ ...

  2. Mac & XCode 使用技巧总结

    Mac OS 是基于UNIX 的操作系统. 一 基本技巧 1. 允许安装任何来源的APP 系统偏好设置 -> 安全性和隐私 -> 通用 选择”允许从以下位置下载的应用程序“ 中的 “任何来 ...

  3. POJ 1038 Bugs Integrated, Inc.

    AC通道 神坑的一道题,写了三遍. 两点半开始写的, 第一遍是直接维护两行的二进制.理论上是没问题的,看POJ discuss 上也有人实现了,但是我敲完后准备开始调了.然后就莫名其妙的以为会超时,就 ...

  4. POJ1080Human Gene Functions(LCS变形)

    题目链接 题目:给出两个串,每匹配一种有一种权值,求权值最大的匹配串 就是 最长公共子序列的 的思想: 首先对于 i 和 j 来比较, 一种情况是i和j匹配,此时 dp[i][j] = dp[i - ...

  5. 图片上传利用<iframe></iframe>标签实现无刷新上传图片

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. MySQL学习笔记——基本语法

    SQL——结构化查询语言(Structured Query Language) 1> SQL语言不区分大小写,建议关键字用大写,但是字符串常量区分大小写 2> SQL注释:/**/多行注释 ...

  7. strcpy函数的实现

    strcpy函数的实现 大家一般认为名不见经传strcpy函数实现不是很难,流行的strcpy函数写法是: char *my_strcpy(char *dst,const char *src) { a ...

  8. Language Tool ,a plugin for TeXStudio

    Language Tool ,a plugin for TeXStudio TexStudio supports LanguageTool as an inline grammar checker. ...

  9. java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别

    java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别   以前一直没有注意过这个问题,前两天机缘巧合上网查了一下,然后自 ...

  10. asp.net mvc 4 高级编程学习笔记:第三章 视图(2)

    页面布局 asp.net MVC中提供了布局的支持,默认情况下才布局文件保存到 /View/Shared/目录下的_Layout.cshtml,View目录有个_ViewStart.cshtml文件, ...