es6数组新方法
(1)Array.from(aarr,fn,obj)
function fn(dr, sd, d) {
/*Array.from 类数组转化为数组*/
console.log(arguments)
var arr = Array.from(arguments);
console.log(arr);
var arr1 = [].slice.call(arguments);
console.log(arr1);
var a = [...arguments]//=========================扩展运算符也可将数组住转化为非数组
console.log(a)
/*Array.from接受第二个参数(对数组中的每个元素进行操作),第三个参数是用来绑定this的指向*/
var arr3 = Array.from(arguments, function (i) {
return i * 7
})
console.log(arr3)
}
fn(1, 2, 2);
(2) /*Array.of() 将一组值转化为数组*/
//可用此方法创建一个数组
!(function () {
console.log(Array.of(21)); var result = [1, 2, 3, 434, 56].find(function (n) {
return n < 0;
})
console.log(result) })()
(3) find() findIndex()
!function () {
/*find() 返回数组中第一个满足条件的元素
findIndex() 返回第一个满足条件元素的下标*/
//====================================================这俩种方法都可以失败而NaN 但是indexof却不行
let arr= Array.of(0,1,2,3,4,5,6,7,8,9);
let arr1=arr.find(function (v,k,arr) {
/*回调函数有三个参数(当前值,当前下标,该数组)*/
//对数组中的元素进行遍历
// console.log(v,k,arr);
return v>2;
})
console.log(arr1) //3
console.log(arr.findIndex(function (v,k,arr) {
// console.log(v)
return v>4 //5
}))
}()
(4)fill()对数组进行填充 可用于对数组的初始化
!(function () {
/*对数组进行填充*/
console.log(['s'].fill(2))//会抹除原数组
console.log(new Array(3)) //[undefined × 3]
console.log(new Array(3,2)) //[3, 2]; console.log([1,2,3,4,544].fill('ss',0,4))//对数组用‘ss'进行填充 })()
(5)includes()检测数组中是否有某个元素 返回值为布尔值
!(function () {
// includes() 查找数组中是是否含有某个元素 ==此方法属于es7 但是babel转换器已经支持
// 与字符串
/*参数1:要查找的元素
* 参数2:从某位置开始查找,若为负数则倒着选取位置向后查找*/
console.log([1,1,2,NaN].includes(NaN)); //true 返回值是布尔值 对NaN识别
console.log([1,1,2,NaN,2].includes(NaN,-3)); //false
console.log([1,2,3,4,NaN].indexOf(NaN)); //-1 不对NaN识别 })()
es6数组新方法的更多相关文章
- JavaScript ES6 数组新方法 学习随笔
JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var ...
- ES6数组新加 Buff
欢迎关注本人公众号<迈向大前端>,里面有15本前端相关的电子书,送给在前端路上迷茫的同学们! 本章篇幅很长,分开来发,这一小篇主要讲ES6数组的Array.of()和Array.from( ...
- 看es6 字符串新方法有感
'x'.repeat(3) // "xxx" 'hello'.repeat(2) // "hellohello" 'na'.repeat(0) // " ...
- ES6的新方法实现数组去重
ES6里新添加了两个很好用的东西,set和Array.from. set是一种新的数据结构,它可以接收一个数组或者是类数组对象,自动去重其中的重复项目. 在这我们可以看见,重复的项目已经被去掉了,包括 ...
- ES6 数组遍历方法的实战用法总结(forEach,every,some,map,filter,reduce,reduceRight,indexOf,lastIndexOf)
目录 forEach every some map filter reduce && reduceRight indexOf lastIndexOf 前言 ES6原生语法中提供了非常多 ...
- es6数组的方法
1.复习的函数 函数是由关键字function声明的,他是一个引用数据类型,是Function的实例,在调用的时候会开辟一个私有空间 2.函数的成员 arguments:null (是实参构成的数组 ...
- ECMAScript 6中数组新方法
数组的方法 数组的的大部分方法都可以实现数组的遍历. foreach方法 实现数组的遍历 const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; arr.forEach(fu ...
- es6数组新特性
1.Array.from 从类数组和可遍历对象中创建Array的实例 类数组对象包括:函数中的arguments.由document.getElementsByTagName()返回的nodeList ...
- ES6数组去重方法
Set实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员),操作方法有:add(value).delete(value).has(value).clear():遍历方法有:keys ...
随机推荐
- 项目一:在线下单(补充) activeMQ使用(重点) 重构客户注册功能,发短信功能分离
1 课程计划 1.在线下单(补充) 2.activeMQ使用(重点) n 简介和安装 n activeMQ入门案例 n spring整合activeMQ应用 3.重构客户注册功能,发短信功能分离 n ...
- Ubuntu,kubuntu与xubuntu的差别 Ubuntu各版本主要差异
Ubuntu各版本主要差异 Ubuntu官方考虑到使用者的不同需求,提供各种不同的发行版.虽然发布了几种版本的Ubuntu系统,但是它们的核心系统是一模一样的.可以这么说不同发行版的Ubuntu的区别 ...
- PCL—点云分割(超体聚类) 低层次点云处理
博客转载自:http://www.cnblogs.com/ironstark/p/5013968.html 1.超体聚类——一种来自图像的分割方法 超体(supervoxel)是一种集合,集合的元素是 ...
- 22、linux的ssh互信配置
转载:https://blog.csdn.net/hrn1216/article/details/51568830 https://blog.csdn.net/u013144287/article/d ...
- 移动应用中的AR开发,5款最受欢迎工具推荐!
英文原文:Top 5 Tools for Augmented Reality in Mobile Apps 还记得前段时间在网上很火的 3D 小熊不?托它的福,为相当一部分人科普了增强现实(AR) ...
- SDUT 3363 数据结构实验之图论七:驴友计划
数据结构实验之图论七:驴友计划 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 做为一个资深 ...
- clions的使用
最近无聊玩了下CLion这个IDE,顺便学习了下CMAKE怎么使用.话说CLion的CMAKE的支持还不是特别的完好,和命令行模式还有有区别,有如下几个问题: 1:CMAKE的编译目录不能指定,而是I ...
- CIFAR-10 模型
Code: https://github.com/tensorflow/models/tree/master/official/resnet Data: http://www.cs.toronto.e ...
- Charles抓包https请求
平时使用Charles抓包,http的请求一眼就看到具体的请求信息返回信息等,但是如果是https请求,则是出现<unknow>,如下图: 若想要抓取https请求,怎么办呢? 1.连接C ...
- 零点起飞学HTML+CSS (顼宇峰) PDF扫描版
零点起飞学HTML+CSS系统地介绍了网站制作中各种常用的HTML标签和CSS属性,以及网站各个部分和各种布局的实现方法,还提供了大量实例来引导读者学习,力求让读者获得真正实用的知识.本书涉及面广,从 ...