es6 语法 (数组扩展)
{
let arr = Array.of(3, 4, 7, 9, 11);
console.log('arr', arr); //[3,4,7,9,11]
let empty = Array.of();
console.log(empty); //[]
}
//ES6为Array增加了from函数用来将其他对象转换成数组。
//当然,其他对象也是有要求,也不是所有的,可以将两种对象转换成数组。
//1.部署了Iterator接口的对象,比如:Set,Map,Array。
//2.类数组对象,什么叫类数组对象,就是一个对象必须有length属性,没有length,转出来的就是空数组。
{
//转换数组
let p = document.querySelectorAll('p');
let pArr = Array.from(p);
pArr.forEach(function(item) {
console.log(item.textContent); //es6,嘿嘿嘿,快乐动起来
});
//map
console.log(Array.from([1, 3, 5], function(item) {
return item * 2
})) //2,6,10
}
//数组填充
{
console.log('fill-7', [1, 'a', undefined].fill(7)) // 7,7,7
console.log('fll,pos', ['a', 'b', 'c'].fill('7', 1, 3)); //a 7 7 (1,3)表示起始位置,7为填充内容
}
//遍历相关
{
//取位置
for (let index of['1', 'c', 'ks'].keys()) {
console.log('keys', index); //0 1 2
}
//取值
for (let value of['1', 'c', 'ks'].values()) {
console.log('values', value); //1 c ks (这里有兼容问题,需引入 import 'babel-polyfill')
}
//取位置和值
for (let [index, value] of['1', 'c', 'ks'].entries()) {
console.log('values', index, value); //0 1 2,1 c ks
}
}
//在当前数组内部数组内一个成员赋值到其他地方
{
console.log([1, 2, 3, 4, 5].copyWithin(0, 3, 4)); //4,2,3,4,5 (开始位置0,从第三个开始读起,截止位置为4,即5个数)
console.log([1, 2, 3, 4, 5].copyWithin(1, 3, 4)) //1,4,3,4,5
console.log([1, 2, 3, 4, 5].copyWithin(0, -2, -1)) //4,2,3,4,5
}
//查找
{
console.log([1, 2, 3, 4, 5, 6].find(function(item) {
return item > 3 //4 只找第一个值,不往后了
}));
console.log([1, 2, 3, 4, 5, 6].findIndex(function(item) {
return item > 3 //3 找的是下标
}));
}
//NaN
{
console.log('number',[1,2,NaN].includes(1)); // true 是否包含这个值
console.log('number',[1,2,NaN].includes(NaN)); // true
}
es6 语法 (数组扩展)的更多相关文章
- ES6之数组扩展方法【一】(相当好用)
form 转化为真正的数组 先说一下使用场景,在Js中,我们要经常操作DOM,比如获取全部页面的input标签,并且找到类型为button的元素,然后给这个按钮注册一个点击事件,我们可能会这样操作: ...
- ES6(五) 数组扩展
Array.of方法用于将一组值,转换为数组. Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象(包括ES ...
- call,apply,bind与es6的数组扩展运算符...
js中每一个Function对象都有一个apply个一个call方法: function.apply(thisObj,[argArray]); function.call(thisObj,arg1,a ...
- 【es6】数组扩展
只有一个参数,为数组中的值.
- ES6数组扩展
前面的话 数组是一种基础的JS对象,随着时间推进,JS中的其他部分一直在演进,而直到ES5标准才为数组对象引入一些新方法来简化使用.ES6标准继续改进数组,添加了很多新功能.本文将详细介绍ES6数组扩 ...
- es6核心特性-数组扩展
1. Array.from() : 将伪数组对象或可遍历对象转换为真数组 如果一个对象的所有键名都是正整数或零,并且有length属性,那么这个对象就很像数组,称为伪数组.典型的伪数组有函数的argu ...
- ES6对数组的扩展(简要总结)
文章目录 数组的扩展(ES6) 1. 扩展运算符 2. Array.from 3. Array.of() 4. copyWithin() 5. find() 和 findIndex() 6. fill ...
- ES6中数组和对象的扩展运算符拷贝问题以及常用的深浅拷贝方法
在ES6中新增了扩展运算符可以对数组和对象进行操作.有时候会遇到数组和对象的拷贝,可能会用到扩展运算符.那么这个扩展运算符到底是深拷贝还是浅拷贝呢? 一..使用扩展运算符拷贝 首先是下面的代码. le ...
- ES6扩展——数组扩展
1.结合扩展运算符使用.通过扩展运算符,在调用函数的时候,把一个数组展开,然后作为这个函数的参数 //结合扩展运算符使用 function foo(a,b,c){ console.log(a); // ...
- es6基础(6)--数组扩展
//数组扩展 { let arr=Array.of(3,4,6,7,9,11);//可以是空 console.log('arr=',arr);//[3,4,6,7,9,11] } { //Array. ...
随机推荐
- Kali学习笔记30:身份认证与命令执行漏洞
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 实验环境: Kali机器:192.168.163.13 ...
- 消除浏览器对input的自动填充
在做登录相关的页面时,常遇到这样的现象,浏览器input的自动填充行为. 原因 设置 input 的 type 属性为 password 后,当页面进行过提交,并且允许浏览器记住密码后,那么再次加载该 ...
- AI - 概念(Concepts)
01 - AI.ML与DL的关系 从涵盖范围上来讲,人工智能(AI)大于机器学习(ML)大于深度学习(DL) 人工智能(AI):能够感知.推理.行动和适应的程序: 机器学习(ML):能够随着数据量的增 ...
- Python的GUI编程(TK)
TK在大多数 Unix平台.Windows平台和Macintosh系统都是预装好的,TKinter 模块是 Tk GUI 套件的标准Python接口.可实现Python的GUI编程. Tkinter模 ...
- asp.net core mvc发布后显示异常错误信息的方法
在发布的项目文件夹中找到web.config文件,修改: <aspNetCore processPath="dotnet" arguments=".\Cloud.B ...
- 如何走上更高平台分享传递干货知识:(开通个人Github面向开源及私有软件项目的托管平台:https://github.com/zlslch/)(图文详解)(博主推荐)
不多说,直接上干货! https://github.com/ 欢迎大家,加入我的微信公众号:大数据躺过的坑 人工智能躺过的坑 同时,大家可以关注我的个人博客: http ...
- ZOJ Problem Set - 2397 Tian Ji -- The Horse Racing
#include<iostream> #include<cmath> #include<algorithm> #define REP(i,n) for(int i= ...
- spring3.0框架检测方法运行时间测试(转)
主要利用了Spring AOP 技术,对想要统计的方法进行横切处理,方法执行前开始计时,方法执行后停止计时,得到计时方法就是该方法本次消耗时间. 步骤: 首先编写自己的Interceptor类来实现M ...
- Mysql加锁过程详解(2)-关于mysql 幻读理解
Mysql加锁过程详解(1)-基本知识 Mysql加锁过程详解(2)-关于mysql 幻读理解 Mysql加锁过程详解(3)-关于mysql 幻读理解 Mysql加锁过程详解(4)-select fo ...
- The 2018 ACM-ICPC Asia Qingdao Regional Contest(部分题解)
摘要: 本文是The 2018 ACM-ICPC Asia Qingdao Regional Contest(青岛现场赛)的部分解题报告,给出了出题率较高的几道题的题解,希望熟悉区域赛的题型,进而对其 ...