ES6新增的数组知识实例小结


Posted in Javascript onMay 23, 2020

本文实例讲述了ES6新增的数组知识。分享给大家供大家参考,具体如下:

ES6新增的数组知识实例小结

1.JSON数组格式转换

JSON的数组格式就是为了前端快速的把JSON转换成数组的一种格式,json数组格式如下:

let json = {
  '0': '男',
  '1': '女',
  length:3
}

这就是一个标准的JSON数组格式,跟普通的JSON对比是在最后多了一个length属性。只要是这种特殊的json格式都可以轻松使用ES6的语法转变成数组。

把上边的JSON代码使用Array.from(xxx)来转换成数组,代码如下:

let json = {
  '0': '男',
  '1': '女',
  length: 2
}

let arr = Array.from(json)
console.log(arr)

结果为:

 ["男", "女"]

上述中的length的值等于json中的除length:2以为的总和,若值多余实际,在数组中则会出现undefined。如下:

ES6新增的数组知识实例小结

结果为:

ES6新增的数组知识实例小结

 2.Array.of()方法

它负责把一堆文本或者变量转换成数组。在开发中我们经常拿到了一个类似数组的字符串,需要使用eval来进行转换,会拖慢我们的程序。这时候我们就可以使用Array.of方法。比如:

let arr =Array.of(3,4,5,6);
console.log(arr);

结果为:

ES6新增的数组知识实例小结

当然它不仅可以转换数字,字符串也是可以转换的。

let arr =Array.of('es6',1,'开发');
console.log(arr);

结果为:

ES6新增的数组知识实例小结

 3.find( )实例方法

 所谓的实例方法就是并不是以Array对象开始的,而是必须有一个已经存在的数组,然后使用的方法。也即实例方法是针对已存在的数组的。

在find方法中我们需要传入一个匿名函数,函数需要传入三个参数

  • value:表示当前查找的值。
  • index:表示当前查找的数组索引。
  • arr:表示当前数组。

在函数中如果找到符合条件的数组元素就进行return,并停止查找。相关代码如下:

let arr=[0,1,2,3,4,5,6,7,8,9];
console.log(arr.find(function(value,index,arr){
  return value > 6;
}))

返回结果为:7。说明找到了符合条件的值,并进行返回了,如果找不到会显示undefined

 4.fill( )实例方法

fill()也是一个实例方法,它的作用是把数组进行填充,它接收三个参数,第一个参数是填充的变量,第二个是开始填充的位置,第三个是填充到的位置。

let arr=[0,1,2,3,4,5,6,7,8,9];
arr.fill('es',2,5);
console.log(arr);

结果为:

ES6新增的数组知识实例小结

上边的代码是把数组从第二位到第五位用es进行填充。

5.数组的遍历--for…of循环

(1)输出数组内容

let arr=['男','女']
for (let item of arr){
  console.log(item);
}

结果为:男、女。

(2)输出数组索引

let arr=['男','女']
for (let index of arr.keys()){
  console.log(index);
}

输出值为:

0、1

(3)同时输出数组的内容和索引--entries()方法

let arr=['男','女']
for (let [index,val] of arr.entries()){
  console.log(index+":"+val);
}

结果为:

ES6新增的数组知识实例小结

6.entries( )实例方法

entries()实例方式生成的是Iterator形式的数组,那这种形式的好处就是可以让我们在需要时用next()手动跳转到下一个值。如下代码:

let arr=['男','女']
let list=arr.entries();
console.log(list.next().value);
console.log(list.next().value);

结果为:

ES6新增的数组知识实例小结

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery选择器全面总结
Jan 06 Javascript
Jquery.Form 异步提交表单的简单实例
Mar 03 Javascript
深入分析jquery解析json数据
Dec 09 Javascript
HTML5+setCutomValidity()函数验证表单实例分享
Apr 24 Javascript
Javascript 高阶函数使用介绍
Jun 15 Javascript
JS实现网页上随机产生超链接地址的方法
Nov 09 Javascript
微信小程序 UI与容器组件总结
Feb 21 Javascript
angular.js指令中的controller、compile与link函数的不同之处
May 10 Javascript
解决vue项目报错webpackJsonp is not defined问题
Mar 14 Javascript
如何使用proxy实现一个简单完整的MVVM库的示例代码
Sep 17 Javascript
vue选项卡切换登录方式小案例
Sep 27 Javascript
解决vue2中使用elementUi打包报错的问题
Sep 22 Javascript
ES6扩展运算符和rest运算符用法实例分析
May 23 #Javascript
JavaScript组合设计模式--改进引入案例分析
May 23 #Javascript
JavaScript组合模式---引入案例分析
May 23 #Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
May 23 #Javascript
JavaScript设计模式--简单工厂模式实例分析【XHR工厂案例】
May 23 #Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
May 23 #Javascript
基于element-ui封装可搜索的懒加载tree组件的实现
May 22 #Javascript
You might like
ASP知识讲座四
2006/10/09 PHP
thinkPHP模型初始化实例分析
2015/12/03 PHP
PHP使用第三方即时获取物流动态实例详解
2017/04/27 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
PHP array_reduce()函数的应用解析
2018/10/28 PHP
PHP文件上传小程序 适合初学者学习!
2019/05/23 PHP
Laravel 修改验证异常的响应格式实例代码详解
2020/05/25 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
js switch case default 的用法示例介绍
2013/10/23 Javascript
在js文件中写el表达式取不到值的原因及解决方法
2013/12/23 Javascript
删除Javascript Object中间的key
2014/11/18 Javascript
JQuery控制div外点击隐藏而div内点击不会隐藏的方法
2015/01/13 Javascript
Node.js 学习笔记之简介、安装及配置
2015/03/03 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
2017/01/11 Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/06 Javascript
js实现悬浮窗效果(支持拖动)
2017/03/09 Javascript
vue实现app页面切换动画效果实例
2017/05/23 Javascript
浅析JS中常用类型转换及运算符表达式
2017/07/23 Javascript
nodejs发送http请求时遇到404长时间未响应的解决方法
2017/12/10 NodeJs
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
vue项目base64字符串转图片的实现代码
2018/07/13 Javascript
layer.close()关闭进度条和Iframe窗的方法
2018/08/17 Javascript
使用iView Upload 组件实现手动上传图片的示例代码
2018/10/01 Javascript
Vue.js实现的购物车功能详解
2019/01/27 Javascript
浅析python递归函数和河内塔问题
2017/04/18 Python
python3.6连接mysql数据库及增删改查操作详解
2020/02/10 Python
Laravel中Kafka的使用详解
2021/03/24 PHP
关于逃课的检讨书
2014/01/23 职场文书
社区活动邀请函范文
2014/01/29 职场文书
司机职责范本
2014/03/08 职场文书
自行车广告词大全
2014/03/21 职场文书
郭明义电影观后感
2015/06/08 职场文书
导游词之无锡丝业博物馆
2019/11/12 职场文书
python如何利用cv2模块读取显示保存图片
2021/06/04 Python
入门学习Go的基本语法
2021/07/07 Golang
Python中time标准库的使用教程
2022/04/13 Python