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() --按照下 ...
随机推荐
- 利用XAMPP本地搭建WordPress博客
现在越来越多的人利用WordPress搭建了自己的博客网站,我也是一样,但是还有一些人不知道怎么搭建WordPress网站的方法,因为怕弄 不好,所以也就没有花钱去做,所以这里我就讲讲怎么样利用XAM ...
- 用js写动态时钟 2017-03-23
45每隔1秒变一次: 代码如下: <body onLoad="show()" > ------------表示当页面载入时执行该事件,可以没有 <div id ...
- Javscript的函数链式调用基础篇
我们都很熟悉jQuery了,只能jQuery中一种非常牛逼的写法叫链式操作: $('#div').css('background','#ccc').removeClass('box').stop(). ...
- 关于java中的值传递与引用传递遇到的问题
来源于:https://www.nowcoder.com/test/question/done?tid=14302398&qid=25373#summary 下列java程序的输出结果为___ ...
- 关于 Git使用的全面总结 —— 致敬Git之父Linux
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px ".PingFang SC"; color: #454545 } p.p2 ...
- 在nuxt中加入element-ui插件遇到的问题
gen1.首先进入nuxt的官网跟着步骤实现内容. https://zh.nuxtjs.org/guide/plugins 2.在我们的项目目录中找plugin 根据图片中的表示引入内容: impor ...
- 如何图形化创建oracle数据库
需要注意的几点 1.如果用oracle客户端访问服务器的话必须把服务器的主机名写成(计算机的名称)Oracle创建数据库的方法 2.navigate如何远程oracle数据库 E:\app\lenov ...
- curl 获取外网IP
#curl http://members.3322.org/dyndns/getip121.204.134.10
- 01_搭建Linux虚拟机(下)_我的Linux之路
原文发布在特克斯博客www.susmote.com 上一节已经给大家讲解了如何用VMware安装虚拟机,但是只讲了在VMware里面的操作 接下来我们讲在Linux内部的安装步骤 首先我们启动Li ...
- openjudge(三)
已知三角形的三边分别是a.b.c, 先算出周长的一半s=1/2(a+b+c) 则该三角形面积S=根号[s(s-a)(s-b)(s-c)] 这个公式叫海伦--秦九昭公式 证明: 设三角形的三边a.b.c ...