js数组(一)
一、创建数组两种方法:
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数组(一)的更多相关文章
- 小兔JS教程(四)-- 彻底攻略JS数组
在开始本章之前,先给出上一节的答案,参考答案地址: http://www.xiaotublog.com/demo.html?path=homework/03/index2 1.JS数组的三大特性 在J ...
- js数组学习整理
原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...
- 转→js数组遍历 千万不要使用for...in...
看到一篇内容还不错,但是排版实在糟糕, 逼死强迫症患者啊,直接拉下去找原文连接,找到了,但是已经消失了···500错误... 第一次因为实在看不下去一篇博客的排版, 为了排版而转载... 转载地址:h ...
- js数组操作大全
原文(http://www.cnblogs.com/webhotel/archive/2010/12/21/1912732.html) 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简 ...
- js数组去重的4种方法
js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...
- js 数组处理函数
本文转载自有有<js 数组处理函数> concat 将参数列表连接到原数组后面形成一个新的数组并返回,原有数组不受影响. var arr = ["a","b& ...
- js 数组赋值问题 :值传递还是引用?
转载于知乎var a = [1,2,3]; var b = a; a = [4,5,6]; alert(b); //[1,2,3] 面试时被问到这样一个问题,竟然从来没试过... 当时直接的理解,数组 ...
- JS数组方法汇总 array数组元素的添加和删除
js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^ var arr = new Array(); arr[0] = "aaa"; arr[ ...
- js数组操作
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多, 自以为js高手的自己居然无从下手,一下狠心,我学! ...
- js数组操作【转载】
用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多,自以为js高手的自己居然无从下手,一下狠心,我学!呵 ...
随机推荐
- linux 查看目录名称的方法
1. ls -d * 2. grep查找以'/'结尾的,也就是目录 ls -F | grep '/$'
- mysql 的replace 和replace in to
1. mysql 的replace 批量替换 update candidate set education = replace(education,'科','学') where education ...
- php封装redis负载均衡类
$array = array( 'master' => array( "redis://127.0.0.1:6379?timeout=1", ), 'slave' => ...
- git 快速使用(本地仓库同步到远程仓库)
学git一段时间,可惜公司用的是svn,平时少用,又忘了,总结一下,免得下次又得重新学习.得多多用才是正道! 一. 将本地的提交到网上git仓库 1.在git创建仓库 ...
- chapter 1 Number/Adventurous Person
part1: 1- Which would be easier to remember a munber or a name? Well, I am better at remembering num ...
- spring postconstruct
package com.jdw.service.impl; import java.util.List; import javax.annotation.PostConstruct; import o ...
- win7 PHP7.0的PDO扩展
一个非常棘手的问题,win7(64位)环境,编译安装的mysql,php无法使用pdo扩展. 而我的centos中yum安装的php,pdo是好用的. 百度了一大堆,都无法解决. 基本上百度到的都是要 ...
- 修复被注入的sql server
) set @delStr='<script src=http://3b3.org/c.js></script>'----这边修改被注入的js set nocount on ) ...
- MEMS市场介绍
惠普第一.德州仪器第二 市场观察发展报告说,MEMS市场在2007年增长百分之九,达到70亿美元,其中前30名制造商的收入总和有56亿美元,平均增长7个百分点. 惠普(HP)打印机使用MEMS喷墨头, ...
- Hadoop--Hadoop的机架感知
Hadoop的机架感知 Hadoop有一个“机架感知”特性.管理员可以手工定义每个slave数据节点的机架号.为什么要做这么麻烦的事情?有两个原因:防止数据丢失和提高网络性能. 为了防止数据丢 ...