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 相关文章推荐
firefox 和 ie 事件处理的细节,研究,再研究 书写同时兼容ie和ff的事件处理代码
Apr 12 Javascript
测试JavaScript字符串处理性能的代码
Dec 07 Javascript
10款非常有用的 Ajax 插件分享
Mar 14 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
Jul 09 Javascript
jQuery 判断图片是否加载完成方法汇总
Aug 10 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
Nov 24 Javascript
基于element-ui的rules中正则表达式
Sep 04 Javascript
配置一个vue3.0项目的完整步骤
Apr 26 Javascript
layui--js控制switch的切换方法
Sep 03 Javascript
ES6中Promise的使用方法实例总结
Feb 18 Javascript
如何在Vue.JS中使用图标组件
Aug 04 Javascript
原生JavaScript实现五子棋游戏
Nov 09 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
深入解析PHP的引用计数机制
2013/06/14 PHP
ThinkPHP实现带验证码的文件上传功能实例
2014/11/01 PHP
javascript js cookie的存储,获取和删除
2007/12/29 Javascript
javascript Array.prototype.slice使用说明
2010/10/11 Javascript
extjs 初始化checkboxgroup值的代码
2011/09/21 Javascript
Javascript 面向对象(二)封装代码
2012/05/23 Javascript
JavaScript中OnLoad几种使用方法
2012/12/15 Javascript
JS小功能(offsetLeft实现图片滚动效果)实例代码
2013/11/28 Javascript
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
使用typeof判断function是否存在于上下文
2014/08/14 Javascript
JavaScript结合AJAX_stream实现流式显示
2015/01/08 Javascript
javascript实现俄罗斯方块游戏的思路和方法
2015/04/27 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
jQuery网页版打砖块小游戏源码分享
2015/08/20 Javascript
JS根据生日月份和日期计算星座的简单实现方法
2016/11/24 Javascript
jQuery is not defined 错误原因与解决方法小结
2017/03/19 Javascript
angular4实现tab栏切换的方法示例
2017/10/21 Javascript
初探js和简单隐藏效果的实例
2017/11/23 Javascript
js循环map 获取所有的key和value的实现代码(json)
2018/05/09 Javascript
为vue项目自动设置请求状态的配置方法
2019/06/09 Javascript
Python实现获取操作系统版本信息方法
2015/04/08 Python
python optparse模块使用实例
2015/04/09 Python
Python内置函数delattr的具体用法
2017/11/23 Python
django允许外部访问的实例讲解
2018/05/14 Python
django框架自定义用户表操作示例
2018/08/07 Python
Python实现括号匹配方法详解
2020/02/10 Python
Python调用REST API接口的几种方式汇总
2020/10/19 Python
4款Python 类型检查工具,你选择哪个呢?
2020/10/30 Python
HTML5 input元素类型:email及url介绍
2013/08/13 HTML / CSS
Java中实现多态的机制
2015/08/09 面试题
大学毕业生工作的自我评价
2013/10/01 职场文书
应用艺术专业个人的自我评价
2014/01/03 职场文书
优秀社区干部事迹材料
2014/02/03 职场文书
2014年环保局工作总结
2014/12/11 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
python文件与路径操作神器 pathlib
2022/04/01 Python