js 数组(Array)
一.数组
稠密数组(非稀疏数组)
稀疏数组
二.数组的添加和删除
我们已经常见过添加数组元素最简单的方法:为新索引赋值;也可以使用push()方法在数组末尾增加一个或者多个元素:
a = [];
a.push("zero");
a.push("one","two");
可以像删除对象属性一样使用delete运算符来删除数组元素;如果从数组中删除一个元素,它就变成稀疏数组;
a = [1,2,3];
delete a[1];
1 in a //false:数组索引1并未在数组中定义
a.length //3:delete操作并不会影响数组长度
三.数组遍历
1.for(var i = 0; i < a.length; i++){
if(!a[i]){
continue;
}
}
2.for(var index in sparseArray){
var value = sparseArray[index];
}
四.数组的方法
1.join():将数组中所有的元素都转化为字符串并连接在一起,返回最后生成的字符串;
var a = [1,2,3];
a.join(); //=>"1,2,3"
a.join("") //=>"123"
a.join(" ") //=>"1 2 3"
Array.join()方法是String.split()方法的逆向操作,后者是将字符串分割成若干块来创建一个数组.
2.reverse():将数组中的元素颠倒顺序,返回逆序的数组.
var a = [1,2,3];
a.reverse(); //[3,2,1]
3.sort():将数组中的元素排序并返回排序后的数组.
4.contact():创建并返回一个新的数组.
var a = [1,2,3];
a.contact(4,5); //返回[1,2,3,4,5]
a.contact([4,5]); //返回[1,2,3,4,5]
a.contact([4,5],[6,7]); //返回[1,2,3,4,5,6,7]
a.contact(4,[5,[6,7]]); //返回[1,2,3,4,5,[6,7]]
5.slice():返回的新数组包含第一个参数指定的位置和所有到但不含第二个参数指定的位置之间的所有数组元素,不修改数组本身。
var a = [1,2,3,4,5];
a.slice(0,3); //返回[1,2,3]
a.slice(3); //返回[4,5]
a.slice(1,-1) //返回[2,3,4]
a.slice(-3,-2) //返回[3]
6.splice():是在数组中插入或删除元素的通用方法。不同于slice()和contact(),splice()会修改调用的数组。splice()能够从数组中删除元素、插入元素到数组中或者同事完成着两种操作。第一个参数制定了插入和(或)删除的位置。第二个参数制定了应该从数组中删除的元素的个数。splice()返回一个由删除元素组成的数组。
var a = [1,2,3,4,5,6,7,8];
a.splice(4); //返回[5,6,7,8];a是[1,2,3,4]
a.splice(1,2); //返回[2,3];a是[1,4]
a.splice(1,1); //返回[4],a是[1]
splice()的前两个参数指定了需要删除的元素。紧随其后的任意个数的参数制定了需要插入到数组中的元素,从第一个参数指定的位置开始插入。
var a = [1,2,3,4,5];
a.splice(2,0,'a','b'); //返回[],a是[1,2,'a','b',3,4,5]
a.splice(2,2,[1,2],3); //返回['a','b'],a是[1,2,[1,2],3,3,4,5]
7.push()和pop()
8.unshift()和shift()
9.toString()和toLocaleString()
10.indexOf()和lastIndexOf():搜索整个数组中具有给定值的元素,返回找到的第一个元素的索引或者如果没有找到就会返回-1.indexOf从头到尾搜索,而lastIndexOf则反向搜索.
js 数组(Array)的更多相关文章
- JS数组array常用方法
JS数组array常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2)获取对象的 ...
- 【转】 js数组 Array 交集 并集 差集 去重
原文:http://blog.csdn.net/ma_jiang/article/details/52672762 最劲项目需要用到js数组去重和交集的一些运算,我的数组元素个数可能到达1000以上, ...
- [学习笔记]JS 数组Array push相关问题
前言: 今天用写了一个二维数组,都赋值为零,然后更新其中一个值,结果和预期是不一样,会整列的相同位置都是同一个值. 1.用Chrome的控制台样例如下: arrs[2][2] =1的赋值,竟然是三个数 ...
- js — 数组Array
目录 1. isArray 2. 转换方法 3. 分割字符串 join 4. 栈方法 5. 队列方法 6. 重排序方法 7. 操作方法 8. 位置方法 - 索引 9. 迭代方法 数组 array 解释 ...
- JS数组 Array
1.创建数组 var array=new Array(); 2.添加数组 array.push("111"); array.push("111"); array ...
- JS数组(Array)处理函数总结
1.concat() 连接两个或更多的数组该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本.例如: <script type="text/javascript"&g ...
- JS 数组array方法push, pop, unshift, shift, slice,splice,contact, join, sort
Array:数组对象用来在单独的变量名中存储一系列的值 定义数组: 1. var arrayObj = new Array(); 2. var arrayObj = ...
- js数组Array方法
1. indexOf indexOf()方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1. var fruits = ["Banana", "Orange& ...
- 「面试指南」JS数组Array常用算法,Array算法的一般解答思路
先看一道面试题 在 LeetCode 中有这么一道简单的数组算法题: // 给定一个整数数组 nums 和一个目标值 target, // 请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下 ...
随机推荐
- js对象的创建与原型总结
//1 新建对象 var box = new Object(); box.name = "lee"; box.age = 100; box.run = function(){ re ...
- 谈谈我的编程之路---WAMP(一)
WAMP的一些配置与使用心得(PHP) 记得第一次接触PHP的时候,我都不知道PHP为什么要大写,但是我却用它来进行工作了,有时候生活就是一场美丽的邂逅 青涩的我,在ES哥的引领下,第一次接触到了WA ...
- 超好用的plsql设置
http://blog.itpub.net/24496241/viewspace-740917/
- Oracle锁定和解锁用户的命令
转:http://database.51cto.com/art/200910/158576.htm 在DBA的日常工作中,经常遇到为Oracle用户解锁的操作:这篇文章给出在命令行下进行Oracle用 ...
- COALESCE NVL NVL2 DECODE
1 COALESCE 語法:COALESCE(expr1, expr2, ..., exprn) n>=2 作用:COALESCE returns the first non-null expr ...
- WPF QuickStart系列
接触WPF有一段时间了,现在做的项目也是WPF相关的.所以决定写一个WPF QuickStart系列的文章.也是自己对WPF学习的总结,如果对你有帮助,就非常棒了.因为不善言辞,所以尽量以WPF示例和 ...
- android studio常见错误
1.Failed to import new Gradle project: Could not install Gradle distribution from'http://services.gr ...
- JVM内存结构、垃圾回收那点事
翻看电脑的文件夹,无意看到了9月份在公司做的一次分享,浏览了一下"婆婆特",发现自己在ppt上的写的引导性问题自己也不能确切的回答出来,哎,知识这东西,平时不常用的没些日子就生疏了 ...
- 四种方案解决ScrollView嵌套ListView问题(转)
以下文章转自@安卓泡面 在工作中,曾多次碰到ScrollView嵌套ListView的问题,网上的解决方法有很多种,但是杂而不全.我试过很多种方法,它们各有利弊. 在这里我将会从使用ScrollVie ...
- loj 1337
题目链接:http://lightoj.com/volume_showproblem.php?problem=1337 思路:对于搜过的区域进行标记,如果要求的点落在已经搜过的区域,那么直接取出来即可 ...