一、创建数组两种方法:

1Array构造

var colors = new Array();
2、字面量表示
什么事字面量,如
var colors = ["red","green",""];

  数组项,方括号组成,多个数组项用逗号隔开;

red是数组项

3、

var colors = [,,,];
alert(colors.length);//谷歌是3,IE8以下是4

  

var names = [];//创建一个空数组

  

var colors = ["red", "green"];//创建一个包含三项的字符串

  4、修改数组

 var colors = ["red","green",""];
colors[1] = 'black';
var name = colors[1]
alert(name);

  5、利用length属性添加末尾项的数组

var colors = ["red", "green"];//创建一个包含三项的字符串
colors[colors.length] = 'black';
alert(colors.length);//3
alert(colors[2]);//black

  二、检测数组

1、确定某个对象是不是数组,使用instanceof

var value = ["hello"];
if(value instanceof Array){
alert('yes');//输出YES
}
else{
alert('no');
}

  2、Array.isArray(),IE9以上支持

var value = ["hello"];
if(Array.isArray(value)){
alert('yes');
}
else{
alert('no');
}

  三、转换方法

1、

四、栈方法

pop(),push()后进先出

1、push()方法

 var colors = new Array();
var count = colors.push("red","yellow");//逐个添加数组末尾
alert(count);//2
alert(colors);//red,yellow

  

 var colors = new Array();
var count = colors.push("red","yellow");//逐个添加数组末尾 count = colors.push("black");
alert(count);//3
alert(colors);//red,yellow,black

 2、pop()方法

var colors = new Array();
var count = colors.push("red","yellow");//逐个添加数组末尾 count = colors.push("black");
var item = colors.pop();//移除数组末尾项
alert(item);//black
alert(colors);//red,yellow

  

 五、队列方法

1先进后出

shift().获取数组第一项,使数组的length-1,配合push()使用

var colors = new Array();
var count = colors.push("red","yellow");//逐个添加数组末尾 count = colors.push("black");
var item = colors.shift(); // 获取第一项,red
alert(item);//red
alert(colors);//yellow,black

  2、unshift()

var colors = new Array();
var count = colors.unshift("red","yellow");//逐个添加数组末尾
alert(colors);//red,yellow
count = colors.unshift("black");
alert(colors);//black,red,yellow
var item = colors.pop(); // 获取第一项,red
alert(item);//yellow
alert(colors);//black,red

  六、重排序方法

1、reverse(),sort()

var value = [1,2,3,4,5];
value.sort();
alert(value);//1,2,3,4,5

  2

var value = [1,2,3,4,5];
value.reverse();
alert(value);//5,4,3,2,1

  七、操作方法

1、concat()

2、slice()

var colors = ['red','green','blue','purple','white'];
var removed = colors.slice(1); //从位置1开始复制
var colors1 = colors.slice(1,4); //从位置1开始复制,到位置3结束
alert(removed); //green,blue,purple,white
alert(colors); //red,green,blue,purple,white*/
alert(colors1); //red,green,purple*/

  3、spliace

删除

var colors = ['red','green','blue'];
var removed = colors.splice(0,1); //删除第0项
alert(removed); //red
alert(colors); //green,blue

  插入

var colors = ['red','green','blue'];
var removed = colors.splice(1,0,'yellow','orange'); // 从位置1开始插入 alert(colors); // red,yellow,orange,green,blue
alert(removed); //空数组

  替换

var colors = ['red','green','blue'];
var removed = colors.splice(0,1); //删除第1项.colors为green,blue
//alert(removed); //red
//alert(colors); //green,blue removed = colors.splice(1,0,'yellow','orange'); // 从位置1开始插入
//alert(colors); // green,yellow,orange,blue
//alert(removed); //空数组,因为删除0个数组 removed = colors.splice(1,1,'red','purple');//从位置1开始,删除1项,red,purple
alert(colors);//green,red,purple,orange,blue
alert(removed);//yellow,因为删除yellow这个项

  

js数组(一)的更多相关文章

  1. 小兔JS教程(四)-- 彻底攻略JS数组

    在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...

  2. js数组学习整理

    原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...

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

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

  4. js数组操作大全

    原文(http://www.cnblogs.com/webhotel/archive/2010/12/21/1912732.html) 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简 ...

  5. js数组去重的4种方法

    js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...

  6. js 数组处理函数

    本文转载自有有<js 数组处理函数> concat 将参数列表连接到原数组后面形成一个新的数组并返回,原有数组不受影响. var arr = ["a","b& ...

  7. js 数组赋值问题 :值传递还是引用?

    转载于知乎var a = [1,2,3]; var b = a; a = [4,5,6]; alert(b); //[1,2,3] 面试时被问到这样一个问题,竟然从来没试过... 当时直接的理解,数组 ...

  8. JS数组方法汇总 array数组元素的添加和删除

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

  9. js数组操作

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

  10. js数组操作【转载】

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

随机推荐

  1. <转>maven发布第三方jar的一些问题

    在创建maven中私有仓库过程中,需要发布一些第三方jar到nexus仓库,使用命令的是 deploy:deploy-file 有许多参数,具体可查看 http://maven.apache.org/ ...

  2. WCF如何在浏览器访问

    1.新建wcf服务看到有如下两个方法,在浏览器调用框中的方法.

  3. hdu2317Nasty Hacks

    Problem Description You are the CEO of Nasty Hacks Inc., a company that creates small pieces of mali ...

  4. 安装weblogic的步骤10.3.0.0

    一.安装前的注意事项: weblogic在安装前必须要有对应的jdk支持weblogic的运行.所以在安装之前一定要根据本机上安装的jdk来选择安装的weblgoic的什么版本.因为weblogic的 ...

  5. [汇编语言]-第九章 根据位移进行转移的jmp指令 段内短转移 段内近转移 段间转移(远转移) 转移的目的地址在指令中,在寄存器中,在内存中的jmp指令

    1- jmp为无条件转移指令,可以只修改IP, 也可以同时修改CS和IP jmp指令要给出两种信息: (1) 转移的目的地址 (2) 转移的距离(段间转移, 段内转移, 段内近转移) 2- 依据位移进 ...

  6. Centos6.5下安装php

    安装php: yum -y install php 重启httpd服务激活php: /etc/init.d/httpd restart 测试php是否安装完成 vim /var/www/html/in ...

  7. 关于ajax发送的数据问题

    今天在做保存富文本编辑器的内容时,发送了一个ajax请求: $.ajax({ type:"POST", url:"{% url 'cms:add' %}", d ...

  8. HeadFirst设计模式读书笔记(3)-装饰者模式(Decorator Pattern)

    装饰者模式:动态地将责任附件到对象上.若要扩展功能,装饰者提东了比继承更有弹性的替代方案. 装饰者和被装饰对象有相同的超类型 你可以用一个或者多个装饰者包装一个对象. 既然装饰者和被装饰对象有相同的超 ...

  9. 安全HTTPS-全面详解对称加密,非对称加密,数字签名,数字证书和HTTPS【下】

    1.  HTTPS 1.1. 什么是HTTPS HTTPS(HypertextTransfer Protocol Secure)即安全的HTTP.HTTPS的安全基础是安全套接层(Secure Soc ...

  10. 【D3.V3.js系列教程】--(十四)有路径的文字

    [D3.V3.js系列教程]--(十四)有路径的文字 1. 在 svg 中插入一個 text // 在 body 中插入一個 svg var svg = d3.select('body').appen ...