查找: indexOf、lastIndexOf

迭代:every、filter、forEach、map、somereduce、reduceRight

用法:

 /*
1 查找方法:
* arr.indexOf( value )
* 一个参数 返回value所在数组的位置下标
* 找不到的时候返回-1
*
* arr.indexOf( start , value )
* 从start开始查找value 返回下标
* 找不到的时候返回-1
*
* arr.lastIndexOf( value )
* 从后往前找 返回下标
*
*
*
*2 迭代方法:
* arr.every(function(item , index , arr){
* return item > 2; //如果每一项都大于2 就返回true 否则false
* })
* 传入函数 对每一项进行执行函数,
* 如果每一项都返回true 最后才返回true
* 如果有一个返回false 最后就返回发false
*
* arr.filter( function( item , index , arr ){
* return item > 2; //把大于2的数组元素返回
* } )
* 传入一个函数对每一个元素执行
* 结果是真的元素就返回
*
* arr.forEach(function(item , index , arr){
* alert(item)
* })
* 提供一个循环方法
* 每一个元素都执行一下function
*
* arr.map(function(item , index , arr){
* return item * 2 ;
* })
* 对arr每一项都执行函数 然后返回执行结果
*
*
* arr.some(function(item,index,arr){
*
* retrn item > 2;
* })
* 对arr中每个元素进行判断,
* 有一个返回true 则最后返回true
* 如果全都是false 最后返回false
*
*
*
* arr.reduce( function(prev , cur , index , array){
* // 钱一个值 当前值 索引位置 数组
* return prev + cur;
* })
* 对数组中每个元素进行相加最后返回
*
*
*
* arr.reduceRight( )
* 对数组从右侧向左进行执行 返回最后的结果
*
*
*
*
*
*
*
*
* */

添加:push、pop、shift、unshift

截取splice、slice

操作:concat、join、reverse、sort

用法:

 // 数组的创建方式
// 1 不推荐
// var arr = new Array();
//2 推荐 js种数组内部数据类型可以不一样
var arr = [1,2,3,4,true,"abc",new Date() ];
//alert(arr.length);
//js中的数组可以随意改变长度 元素类型任意
arr.length = 5;
alert(arr); /*
*数组的常用方法
* 1 数组添加 删除元素
* result = arr.push(value1,value2,value3,....) 向数组添加元素 返回值 新数组的长度
* result = arr.pop() 返回数组尾部的元素并移除
*
* result = arr.shift() 从头部移除一个元素 并把头部元素返回
* result = arr.unshift(a,b,c,d,e....) 从头部插入一些元素 返回新数组长度
*
* 2 数组截取
* arr.splice(1,2,3,4,5)
* 数组的截取方法: 改变数组本身
* 第一个参数表示 起始位置
* 第二个参数表示 要截取的个数
* 第三个参数之后作为一个子数组会从截取的位置插入数组
* arr.splice(1) 1后面元素全都截掉
* arr.splice(1,2) 从1号下标元素开始 删去两个元素
*
*
* result = arr.slice(2,3)
* 截取操作 第一个参数是截取的起点,第二个参数是end 左闭右开的截取
* 将截取的结果返回 不 改变数组本身
*
*
* 3 数组操作方法
*
* result = arr1.concat(arr2)
* 将arr1和arr2进行拼接返回
* 不改变数组本身
*
* result = arr.join("-")
* 在每个元素之间添加一个 - 符号 并返回
*
* arr.reverse() 反转数组顺序
* 改变数组本身
*
* arr.sort() 正序排序
* 但是把每一个值按照字符串 一个字节一个字节比较
* 比如10和4比较,会觉得1比4小 10会排在前面
* 改变数组本身
* 如果想正确的排序 需要自己写一个方法传入sort()
* 例如
* function compare(value1 , value2){
* if(value1 < value2){
* return -1;
* }else if(value1 > value2){
* return 1;
* }else{
* return 0;
* }
* }
* 然后再调用 arr.sort(compare)
* 这样就能按照我们想要的正常的正序进行排序了
*
* */

JavaScript中Array数组的方法的更多相关文章

  1. JavaScript 中Array数组的几个内置函数

    本文章内容均参考<JavaScript高级程序设计第三版> 今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工 ...

  2. 浅谈 JavaScript 中 Array 类型的方法使用

    前言:Array 类型是 JavaScript 中除了 Object 类型以外最常用的类型. 一.创建数组 JavaScript 中的数组与其他语言中的数组有着很大的区别.例如Java.PHP等语言中 ...

  3. JavaScript中Array(数组) 对象

    JavaScript中Array 对象 JavaScript中创建数组有两种方式 (一)使用直接量表示法: var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建 ...

  4. js中Array数组基本方法

    总结:push() 添加元素到数组未尾, 返回数组长度 unshift() 添加元素到数组头部, 返回数组长度 pop() 删除数组未尾元素, 返回删除元素 shift() 删除数组头部元素, 返回删 ...

  5. JavaScript中操作数组的方法

    JavaScript Array 对象 对数组操作的方法分为两种 一种是会改变原始数组的变异方法,还有一种是不会改变原始数组的非变异方法. 总结 巧记 Push() 尾部添加 pop() 尾部删除 U ...

  6. javascript中array常用属性方法

    属性: length 表示一个无符号 32-bit 整数,返回一个数组中的元素个数. 截短数组..截短至长度2  则:   .length = 2 方法: Array.from() 方法可以将一个类数 ...

  7. javaScript中的数组迭代方法

    ECMAScript5为数组定义了5个迭代方法. 每个方法都接收两个参数:要在每一项上运行的函数  和  (可选的)运行该函数的作用域对象. 传入这些方法中的函数会接收三个参数:数组项的值,该项在数组 ...

  8. JavaScript中对象数组去重方法

    在一次对后端返回的对象数组的操作时想通过indexOf()或者includes()的方法来实现对对象数组的去重但是行不通,因为用indexOf()返回的都是-1,一下记录两种对象数组(更具指定属性)去 ...

  9. Javascript中Array(数组)对象常用的几个方法

    Javascript中Array数组的几个常用方法 pop()  --获取数组中末尾的元素 shift() --获取数组中首位元素 push() --在数组中末尾增加元素 slice()  --按照下 ...

随机推荐

  1. WordPress非插件实现评论回复邮件提醒通知

    要想在第一时间知道有人在自己博客留言,然后在第一时间回复留言再第一时间通知邮件者,这就需要WordPress博客拥有邮件通知功能. 先看效果: 评论邮件通知的方法: 1.所有回复都发送邮件通知 登陆博 ...

  2. delphi JPG图片 旋转 切边 缩放

    unit UCutFigure_JPG; //JPG 切图 interface uses Windows, Messages, SysUtils, Variants, Classes, Graphic ...

  3. IPFS:Filecoin和复制证明

    这篇文章主要来讲一下Filecoin协议里面的复制证明(Proof of Replication),由于协议涉及到很多概念,可能看起来有点晕乎乎的,小编尽量把复杂问题简单化 ,力求给大家做大普及IPF ...

  4. Android库项目中的资源ID冲突

    1.前言 Android Studio对模块化开发提供的一个很有用的功能就是可以在主项目下新建库项目(Module),但是在使用库项目时却有一个问题就是资源ID冲突,因为编译时SDK会自动帮我们处理这 ...

  5. Java 并发学习笔记

    并发 最近重新复习了一边并发的知识,发现自己之前对于并发的了解只是皮毛.这里总结以下Java并发需要掌握的点. 使用并发的一个重要原因是提高执行效率.由于I/O等情况阻塞,单个任务并不能充分利用CPU ...

  6. poj supermaket (贪心)

    http://poj.org/problem?id=1456 #include<cstring> #include<iostream> #include<algorith ...

  7. [BZOJ 3813]奇数国

    3813: 奇数国 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 736  Solved: 416[Submit][Status][Discuss] ...

  8. 设置linux虚拟机的固定ip、防火墙的一些操作

    安装好虚拟机后,需要设置其固定ip,这样才可以连接该虚拟服务器 设置步骤如下 1.进入network-scripts目录 cd /etc/sysconfig/network-scripts 2.编辑n ...

  9. python网络爬虫,知识储备,简单爬虫的必知必会,【核心】

    知识储备,简单爬虫的必知必会,[核心] 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌 ...

  10. python 使用Nginx和uWSGI来运行Python应用

    参考:http://zmrenwu.com/post/20/ uWSGI是一个Web应用服务器,它具有应用服务器,代理,进程管理及应用监控等功能.它支持WSGI协议,同时它也支持自有的uWSGI协议, ...