JavaScript中Array数组的方法
查找: 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数组的方法的更多相关文章
- JavaScript 中Array数组的几个内置函数
本文章内容均参考<JavaScript高级程序设计第三版> 今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工 ...
- 浅谈 JavaScript 中 Array 类型的方法使用
前言:Array 类型是 JavaScript 中除了 Object 类型以外最常用的类型. 一.创建数组 JavaScript 中的数组与其他语言中的数组有着很大的区别.例如Java.PHP等语言中 ...
- JavaScript中Array(数组) 对象
JavaScript中Array 对象 JavaScript中创建数组有两种方式 (一)使用直接量表示法: var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建 ...
- js中Array数组基本方法
总结:push() 添加元素到数组未尾, 返回数组长度 unshift() 添加元素到数组头部, 返回数组长度 pop() 删除数组未尾元素, 返回删除元素 shift() 删除数组头部元素, 返回删 ...
- JavaScript中操作数组的方法
JavaScript Array 对象 对数组操作的方法分为两种 一种是会改变原始数组的变异方法,还有一种是不会改变原始数组的非变异方法. 总结 巧记 Push() 尾部添加 pop() 尾部删除 U ...
- javascript中array常用属性方法
属性: length 表示一个无符号 32-bit 整数,返回一个数组中的元素个数. 截短数组..截短至长度2 则: .length = 2 方法: Array.from() 方法可以将一个类数 ...
- javaScript中的数组迭代方法
ECMAScript5为数组定义了5个迭代方法. 每个方法都接收两个参数:要在每一项上运行的函数 和 (可选的)运行该函数的作用域对象. 传入这些方法中的函数会接收三个参数:数组项的值,该项在数组 ...
- JavaScript中对象数组去重方法
在一次对后端返回的对象数组的操作时想通过indexOf()或者includes()的方法来实现对对象数组的去重但是行不通,因为用indexOf()返回的都是-1,一下记录两种对象数组(更具指定属性)去 ...
- Javascript中Array(数组)对象常用的几个方法
Javascript中Array数组的几个常用方法 pop() --获取数组中末尾的元素 shift() --获取数组中首位元素 push() --在数组中末尾增加元素 slice() --按照下 ...
随机推荐
- Loadrunner11不能调用IE8解决方法大全
刚安装了英文版的Loadrunner 11, 用的是IE8, 开始录制时没有启动IE, 试了网上很多的方法,最终解决了问题.总结一般产生问题的原因如下. 1.当你主机上有多个浏览器时,loadrunn ...
- 数据操纵:SELECT, INSERT, UPDATE, DELETE
SELECT 句法 SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE ...
- git下载Ardupilot源码
pwd #确定当前目录 mkdir Copter-3.5.4 #如有需要,新建目录 cd Copter-3.5.4 #进入新目录文件 #克隆指定分支,并且克隆分支对应的git子模块 git clone ...
- sklearn包中有哪些数据集你都知道吗?
注册了博客园一晃有3个月了,同时接触机器学习也断断续续的算是有1个月了.今天就用机器学习神器sklearn包的相关内容作为我的开篇文章吧. 本文将对sklearn包中的数据集做一个系统介绍,并简单说一 ...
- GO语言初探
1.GO使用UTF-8编码,纯Unicode文本编写. 2.$ go verson (windows) 3.windows下,需要设置go语言的环境变量,新建一个名为 GOROOT的变量,指向go的具 ...
- 前端的UI设计与交互之字体篇
跨平台的字体设定,力求在各个操作系统下都有最佳展示效果.字体是界面设计中最重要的基本构成之一,用户通过文本来消化内容和完成工作,优雅的字体将大大提升用户的阅读体验及工作效率.在满足不同终端始终保持良好 ...
- thinkphp5多图上传 js部分
在项目中常会用到多图上上传,那就需要多图上传后需要预览,并且能删掉传错(不想传)的图,然而 测试了半天 并不知道jq怎么写,parent()parents()用了半天无果,罢了,还是用原生js来写.这 ...
- Java I/O 总结
Java I/O的的架构使用了装饰器的模式,我们在使用流的时候需要新建很多的装饰器对象,对源数据进行层层包装.各个包装类名以及它们的应用场景比较多,初学的时候难以摸清规律,这里我把它们归一下类,方便大 ...
- 巧用linux版powershell,管理linux下的docker
大家好,我把用powershell的docker马甲命令的好处,放在了页面下方,从第五章开始. powershell 传教士 原创文章 始于 2017-09-07 允许转载,但必须保留名字和出处,否则 ...
- webpack-dev-server 搭建本地服务以及浏览器实时刷新
一.概述开发项目中为了保证上线,开发项目是都需要使用localhost进行开发,以前的做法就是本地搭建Apache或者Tomcat服务器.有的前端开发人员 对服务器的搭建和配置并不熟悉,这个时候需要后 ...