ES6新增函数总结和range函数实现

Array.from  类数组,Set,字符串转为数组

Array.of   不定参数转为数组

Array.prototype.fill(value,[start],[end]) 对数组在指定范围填充值

Array.prototype.find() 查找满足条件的首个元素,否则返回undefined

Array.prototype.findIndex() 查找满足条件的首个元素的索引Array.prototype.includes() 判断数组是否包含指定的值,包含返回true,否则返回false,对象不能检测

Array.prototype.entries() 用数组的索引和值组成的对象生成一个迭代器

Array.prototype.keys() 用数组的索引生成一个迭代器

Array.prototype.values() 用数组的值生成一个迭代器

 String.prototype.trim()   去除两端空格

String.prototype.repeat()  重复字符串生成新字符串

Sting.prototype.startsWith(str,position)   以指定子字符串开始,开始位置可选

String.prototype.endsWith(str,position)以指定子字符串结尾,结束位置可选

String.prototype.includes(str,positon)   是否包含指定的子串,位置可选 

Object.assign  对象合并

1. range函数实现

1.1 keys方法

function range(start,end){
    return [...Array(end - start).keys()].map(item => start + item);
}

在简单情形下,可以直接

[...Array(5).keys()] 来生成一个0到4的序列

1.2 fill方法

function range(start,end){
    return Array(end-start).fill(0).map((el,i) => start + i);
}

 1.3 Array.from方法

function range(end) {
    return Array.from({ length: end }, (_, index) => index);
}

1.4 其他写法

复制代码
Array(10).fill(1).map((x, y) => x + y)

Array.from(Array(20).keys())

[...Array(20).keys()]

for (const x of Array(5).keys()) {
  console.log(x);
}

var range = (l,r) => new Array(r - l).fill().map((_,k) => k + l);
复制代码

 

posted @   全玉  阅读(2508)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2017-07-16 数组快速生成range的方法
2016-07-16 reactjs 注意点
点击右上角即可分享
微信分享提示