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 相关文章推荐
无语,javascript居然支持中文(unicode)编程!
Apr 12 Javascript
JS对URL字符串进行编码/解码分析
Oct 25 Javascript
解析js如何获取当前url中的参数值并复制给input
Jun 23 Javascript
ie下$.getJSON出现问题的解决方法
Feb 12 Javascript
node.js中的http.get方法使用说明
Dec 14 Javascript
js实现上传图片预览的方法
Feb 09 Javascript
微信内置浏览器私有接口WeixinJSBridge介绍
May 25 Javascript
vue2.0 + ele的循环表单及验证字段方法
Sep 18 Javascript
element-ui带输入建议的input框踩坑(输入建议空白以及会闪出上一次的输入建议问题)
Jan 15 Javascript
微信小程序开发实现消息推送
Nov 18 Javascript
Vue监听滚动实现锚点定位(双向)示例
Nov 13 Javascript
解决vue自定义全局消息框组件问题
Nov 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
php数组函数序列之array_keys() - 获取数组键名
2011/10/30 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
2014/04/30 PHP
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
2010/04/15 Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
Jquery刷新页面背景图片随机变换的实现方法
2013/03/15 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
js判断元素是否隐藏的方法
2014/06/09 Javascript
纯jquery实现模仿淘宝购物车结算
2015/08/20 Javascript
Bootstrap的基本应用要点浅析
2016/12/19 Javascript
ES6新特性之数组、Math和扩展操作符用法示例
2017/04/01 Javascript
angularjs的select使用及默认选中设置
2017/04/08 Javascript
Thinkphp5微信小程序获取用户信息接口的实例详解
2017/09/26 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
two.js之实现动画效果示例
2017/11/06 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
微信小程序动态增加按钮组件
2018/09/14 Javascript
详解React项目如何修改打包地址(编译输出文件地址)
2019/03/21 Javascript
微信小程序环境下将文件上传到OSS的方法步骤
2019/05/31 Javascript
微信小程序使用npm包的方法步骤
2019/08/13 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
2020/03/31 Javascript
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
js canvas实现五子棋小游戏
2021/01/22 Javascript
使用webpack和rollup打包组件库的方法
2021/02/25 Javascript
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
Python简单爬虫导出CSV文件的实例讲解
2018/07/06 Python
Python中字符串String的基本内置函数与过滤字符模块函数的基本用法
2019/05/27 Python
基于python操作ES实例详解
2019/11/16 Python
Python基础教程(一)——Windows搭建开发Python开发环境
2020/07/20 Python
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
估算杭州有多少软件工程师
2015/08/11 面试题
个人查摆剖析材料
2014/10/16 职场文书
餐饮服务员岗位职责
2015/02/09 职场文书
会计稽核岗位职责
2015/04/13 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
企业安全生产检查制度
2015/08/06 职场文书
为什么node.js不适合大型项目
2021/04/28 Javascript