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 ...
随机推荐
- 电脑安装unity3d有C盘逐渐爆满问题解决方案
打开unity3d软件,Edit - Preference - GI Cache选中 Custom Cache Location,切换到别的盘,然后点击 Clean Cache清空一次,再查看C盘,存 ...
- python3-深浅复制
# Auther: Aaron Fan names = ["aaron", "alex", "james", "meihengfa ...
- Linux shell实现阳历转农历
闲来无事,想在Linux下用shell写一个阳历转农历的脚本,断断续续大概一个星期终于搞定.现在拿出来与大家分享. 缘由 本脚本实现原理是查表法(因为公式有误差):基于农历新年为基准,对农历新年前后两 ...
- Sequoiadb该如何选择合适的SQL引擎
Sequoiadb作为一个文档型NoSQL数据既可以存储结构化数据也可以存储非结构化数据,对于非结构化数据只能使用原生的API进行查询,对结构化数据我们可以选择使用原生的API和开源SQL引擎,目前P ...
- WordCount测试小程序的实现
一.GitHub地址: https://github.com/245553473/WordCount 二.PSP表格: PSP PSP阶段 预估耗时(分钟) 实际耗时(分钟) Planning 计划 ...
- ZOJ 2301 Color the Ball (离散化+线段树)
题意:有从 1 开始递增依次编号的很多球,开始他们都是黑色的,现在依次给出 n 个操作(ai,bi,ci),每个操作都是把编号 ai 到 bi 区间内 的-所有球涂成 ci 表示的颜色(黑 or 白) ...
- VS2012,更新补丁后--创建项目未找到与约束匹配的导出
更新过一次漏洞,后来尝试建立一个项目,结果错误终于暴露了,创建项目时无法成功创建,而且提示:未找到与约束ontractNameMicrosoft.VisualStudio.Text.ITextDocu ...
- 使用 create 命令建立数据库v, 并利用sp_helpdb查看数据库文件
create database v on primary (name = v, filename='D:\v.mdf', size=3mb, maxsize=10mb, filegrowth=2mb ...
- php二维数组的某一字段 做分组统计
$country=array_column($order,'country');$countryGP=array_count_values($country);对二维数组的某一字段 做分组统计
- 转载 NoSQL | Redis、Memcache、MongoDB特点、区别以及应用场景
NoSQL | Redis.Memcache.MongoDB特点.区别以及应用场景 2017-12-12 康哥 码神联盟 本篇文章主要介绍Nosql的一些东西,以及Nosql中比较火的三个数据库Red ...