一、创建数组两种方法:

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. 开发网站相关知识html和javascript

    1.html 布局 https://github.com/bramstein/jlayout/ http://welcome.totheinter.net/columnizer-jquery-plug ...

  2. 关于jQuery中的attr和data问题

    今天在使用data获取属性并且赋值时遇到一个小问题,写下来防止以后再跳坑. 在使用jQuery获取自定义属性值时,我们习惯用 $(selector).attr('data-value'); jQuer ...

  3. BaseFragment的定义—所有Fragment的父类

    public abstract class BaseActivity extends AppCompatActivity implements View.OnClickListener { prote ...

  4. [XMPP]简易的聊天室实现[一]

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  5. UVA 816 Abbott’s Revenge

    bfs求最短路,递归打印最短路的具体路径: 难点: 当前状态和转弯方式很复杂,要仔细处理: 递归打印:用一个数组存储路径中结点的前一个节点,递归查找 (bfs无法确定下一个结点,但对于没一个结点,它的 ...

  6. ZigBee 技术简介

       Zigbee是IEEE 802.15.4协议的代名词.根据这个协议规定的技术是一种短距离.低功耗的无线通信技术.这一名称来源于蜜蜂的八字舞,由于蜜蜂(bee)是靠飞翔和“嗡嗡”(zig)地抖动翅 ...

  7. 解决C/C++程序执行一闪而过的方法(三种办法)

    简述 在VS编写控制台程序的时候,包括使用其他IDE(Visual C++)编写C/C++程序,经常会看到程序的执行结果一闪而过,要解决这个问题,可以在代码的最后加上system(“pause”).g ...

  8. UML_交互图

    交互图(Interaction Diagram)用来描述系统中的对象是如何进行相互作用的.即一组对象是如何进行消息传递的. 当交互图建模时,通常既包括对象(每个对象都扮演某一特定的角色),又包括消息( ...

  9. Js节点属性与方法

    属性: Attributes     存储节点的属性列表(只读) childNodes 存储节点的子节点列表(只读) dataType     返回此节点的数据类型 Definition     以D ...

  10. c++崩溃错误2

    使用了内联函数: 在头文件中声明和定义内联函数是正确的 但是在头文件中声明内联函数,而在.cpp文件中定义了内联函数会导致崩溃的 .h class stu{ inline void str(): } ...