@Author:Runsen
@Date:2020/5/26

作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件。导致翘课严重,专业排名中下。.在大学60%的时间,都在CSDN。决定今天比昨天要更加努力。

学任何看透菜鸟和W3C的教程,W3c的教程的JavaScript的数组

文章目录

  • 创建数组
  • 添加元素
  • 获取数组中的元素
  • 获取数组的长度
  • 获取数据的索引
  • 寻找元素
  • reduce
  • filter
  • map
  • forEach遍历

数组(Array)是属于内置对象,无论学Python,Java都是切菜的玩意。

创建数组

方式一:直接var

var arr = [1,2,3];

方式二:对象定义(数组的构造函数)。

语法:

var arr = new Array(参数);

如果参数为空,则表示创建一个空数组;参数位置是一个数值时,表示数组长度;参数位置是多个数值时,表示数组中的元素。

添加元素

数组[索引] = 值

比如,下面的例子

var arr = [];
// 向数组中添加元素
arr[0] = 0;
arr[1] = 1;

获取数组中的元素

简单的一比,就是

数组[索引]

获取数组的长度

语法:

数组的长度 = 数组名.length;
console.log(arr.length); // 打印结果:2

获取数据的索引

语法

    索引值 = 数组.indexOf(value);索引值 = 数组.lastIndexOf(value);

解释

  • indexOf(value):从前往后索引,获取 value 在数组中的第一个下标。

  • lastIndexOf(value) :从后往前索引,获取 value 在数组中的最后一个下标。

寻找元素

用的是 find()函数

find()语法

find(function(item, index, arr){return true})

作用:找出第一个满足「指定条件返回true」的元素。

备注:一旦找到符合条件的第一个元素,将不再继续往下遍历。

reduce

reduce为数组中的每一个元素,依次执行回调函数,可以实现累加

var arr = [2, 0, 1, 9, 6];
sumValue = arr.reduce(function(total, item) { //  计算 arr 数组中,所有元素项的综合return total + item;
}, 0);console.log('sumValue:' + sumValue); // 打印结果:18

filter

对数组中每一项运行回调函数,该函数返回结果是true的项,将组成新的数组(返回值就是这个新的数组)。

var arr1 = [1, 3, 6, 2, 5, 6];var arr2 = arr1.filter(function(item, index) {return item > 3; //将arr1中大于3的元素返回,组成新的数组
});
console.log(arr2);

map

map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。它按照原始数组元素顺序依次处理元素。

var arr1 = [1, 3, 6, 2, 5, 6];var arr2 = arr1.map(function (item, index) {return item + 100;  //让arr1中的每个元素加100})
console.log(arr2);

forEach遍历

forEach()方法需要一个函数作为参数,称为回调函数。

回调函数需要传递三个参数,分别是

  • 第一个参数,就是当前正在遍历的元素

  • 第二个参数,就是当前正在遍历的元素的索引

  • 第三个参数,就是正在遍历的数组

var arr1 = [1, 3, 2];arr1.forEach(function(item, index, obj) {console.log("item: " + item + "index: " + index + "obj: " + obj);console.log("----------");});

还要很多用法,请查看W3C,比如push()添加,pop()删除,slice()切片,concat()连接, join()将数组转换为字符串,reverse()反转数组,和Python激活一毛一样。

W3C

九、玩转JavaScript的数组(五)相关推荐

  1. Web前端开发笔记——第四章 JavaScript程序设计 第五节 数组

    目录 一.数组的创建 (一)Array()构造函数 (二)字面量方法 二.数组元素的读写和遍历 三.添加和删除数组元素 (一)添加数组元素 (二)删除数组元素 (三)splice()方法 四.二维数组 ...

  2. Java数组去重的多种方法,[Java教程]JavaScript常见的五种数组去重的方式

    [Java教程]JavaScript常见的五种数组去重的方式 0 2016-12-14 15:00:17 ▓▓▓▓▓▓ 大致介绍 JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 ...

  3. JavaScript学习(五十九)—原型、原型链、闭包以及闭包的不足

    JavaScript学习(五十九)-原型.原型链.闭包以及闭包的不足 一.什么是闭包? 所谓闭包就是指被定义在其他函数内部的函数. 闭包函数可以访问它所在的函数的所有变量. 文字太抽象了,画图解释一下 ...

  4. JavaScript中数组使用总结

    一. 数组的概念 1.1 什么是数组 数组是指的数据的有序列表. 数组中每个值称之为数组的一个元素. 数组中的每个元素都有一个位置,这个位置称之为索引(下标.index).数组的索引是从 0 开始的 ...

  5. [乐意黎原创] JavaScript中数组使用总结

    原文地址:http://blog.csdn.net/u012468376/article/details/53147098 一. 数组的概念 1.1 什么是数组 数组是指的数据的有序列表. 数组中每个 ...

  6. JavaScript对数组的处理(一)

    数组创建JavaScript中创建数组有两种方式,第一种是使用 Array 构造函数:var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20 ...

  7. 【Microsoft Azure 的1024种玩法】四十五.在Azure中快速创建Azure AD Domain Services

    [简介] Azure Active Directory (Azure AD) 是一种基于云的标识和访问管理服务. Azure Active Directory 可帮助相关企业访问内部资源,例如企业 I ...

  8. 用 JavaScript 替换数组中的对象

    由于 JavaScript 是一种动态语言,本文将讨论如何在 JavaScript 中轻松替换存储在数组中的不同对象. 在 JavaScript 中,数组中的对象和类型是动态的或可以更改的.我们可以在 ...

  9. 肝了4.5万字,手把手带你玩转JavaScript(建议收藏)

    江哥手把带你玩转 JavaScript 分为 5 期,大概 15 万字,建议点赞,关注,收藏,防止失联. 本期为第一期入门篇,4.5 万字. 什么是JavaScript? JavaScript简称JS ...

最新文章

  1. 第二种PHP协议,PHP多种形式,第二种使用来自First的数据
  2. EOS账户系统(8)密钥被盗恢复
  3. C语言经典算法 21-30
  4. python中时间处理_Python中处理时间的几种方法小结
  5. 【POJ - 3211】Washing Clothes (dp,0-1背包中点问题)
  6. 线程间的协作(3)——管道输入/输出流
  7. C语言 堆内存操作
  8. java,list集合类
  9. 尽量用iterator代替const_iterator
  10. mySQL及可视化界面navicat在window的配置
  11. 利用D盘内存给C盘扩容
  12. idou老师教你学Istio 16:如何用 Istio 实现微服务间的访问控制
  13. 微信小程序分享功能知识点
  14. 不规则数据排序 Python sort sorted
  15. [USACO10HOL]赶小猪
  16. A - DZY Loves Sequences
  17. 富途证券面试整理--前端
  18. 拼音解析搜索--自动解析拼音汉子组合(包含多音字,拼音缩写)
  19. PostgreSQL 不在使用tigger或rule来模拟 SSQLSERVER timestamp 行变化版本管理
  20. 用HTML5图形拼成的画房子,未来的房子绘画作品图片欣赏

热门文章

  1. OS / Linux / 进程的虚拟地址空间布局
  2. .net集合类型的接口说明与使用
  3. Django学习手册 - pycharm 安装/建立第一个网站hello world
  4. Python_列表常用操作
  5. 《Linux内核设计与实现》读书笔记(十三)- 虚拟文件系统
  6. python基础教程(第二版)
  7. 【bzoj4592】[Shoi2015]脑洞治疗仪
  8. C++ 字符串编程训练1
  9. phpredis中文手册——《redis中文手册》 php版
  10. css background-image 高度自适应_每天一个CSS小技巧 - 内容元素的自适应