详解JavaScript es6的新增数组方法

下面就来详细讲解JavaScript ES6新增的数组方法。

简介

ES6为数组添加了很多有用而方便的方法,这些方法可以让开发者的工作更加高效。下面就来简单介绍一下ES6新增的数组方法。

新增方法

Array.from()

Array.from()方法用于将类数组对象或可迭代对象转换为数组。此方法的第一个参数是要转换的对象,第二个可选参数是一个映射函数,用于映射转换后的数组元素。

示例1: 将字符串转换成数组:

let str = 'hello world';
let arr = Array.from(str);
console.log(arr);
//输出:  ["h", "e", "l", "l", "o", " ", "w", "o", "r", "l", "d"]

示例2: 将可迭代对象转换成数组:

let set = new Set([1, 2, 3]);
let arr = Array.from(set);
console.log(arr);
//输出: [1, 2, 3]

Array.of()

Array.of()方法用于创建一个具有可变数量的参数的新数组实例。

示例:

let arr = Array.of(1, 2, 3);
console.log(arr);
//输出: [1, 2, 3]

Array.prototype.copyWithin()

Array.prototype.copyWithin()方法用于在数组内部将一个元素序列复制到另一个位置。这个方法会返回修改后的数组,并且不会改变数组的长度。

示例:

let arr = [1,2,3,4,5];
arr.copyWithin(3, 0, 2);
console.log(arr);
//输出: [1, 2, 3, 1, 2]

Array.prototype.find()和Array.prototype.findIndex()

Array.prototype.find()和Array.prototype.findIndex()方法用于查找数组中符合条件的元素并返回它的值和索引,如果没有找到返回undefined和-1。

示例1: 查找第一个大于3的元素

let arr = [1, 2, 3, 4, 5];
let res = arr.find((item)=>{
   return item > 3; 
});
console.log(res);
//输出: 4

示例2: 查找第一个大于3的元素的索引

let arr = [1, 2, 3, 4, 5];
let idx = arr.findIndex((item)=>{
   return item > 3; 
});
console.log(idx);
//输出: 3

Array.prototype.fill()

Array.prototype.fill()方法用于将一个数组中的元素都替换成指定的值。

示例:

let arr = [1, 2, 3, 4, 5];
arr.fill(0);
console.log(arr);
//输出: [0, 0, 0, 0, 0]

结语

本文简单介绍了ES6新增的几个数组方法,包括Array.from(), Array.of(), Array.prototype.copyWithin(), Array.prototype.find()和Array.prototype.findIndex(), Array.prototype.fill()。它们的使用可以极大地提高开发效率。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解JavaScript es6的新增数组方法 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 在js代码拼接dom对象到页面上去的模板总结(必看)

    标题: 在JS代码拼接DOM对象到页面上的模板总结 在前端开发中,操作DOM节点是一个非常基础但又非常重要的任务。在JavaScript中,我们可以通过拼接DOM对象来实现动态渲染页面的目的,这种方式通常被称为“JS代码拼接DOM对象到页面上的模板”,本文将为您详细介绍该模板的使用方法和注意事项。 使用方法 对于JS代码拼接DOM对象到页面上,我们通常可以使…

    JavaScript 2023年6月10日
    00
  • Bootstrap 3.x打印预览背景色与文字显示异常的解决

    问题描述 在使用 Bootstrap 3.x 进行页面开发时,我们可能会遇到打印预览中背景色与文字显示异常的问题。具体表现为: 背景色未被打印; 文字被截断或是部分未被显示。 这是因为 Bootstrap 3.x 中默认有一些 CSS 样式会影响打印预览的效果,但我们可以通过以下方式来解决问题。 解决方案 为了实现标准的打印预览效果,我们需要定义打印样式表,…

    JavaScript 2023年5月28日
    00
  • 借助script进行Http跨域请求:JSONP实现原理及代码

    下面是“借助script进行Http跨域请求:JSONP实现原理及代码”的完整攻略。 什么是JSONP? JSONP是一种解决跨域请求的方法,其原理是利用标签的src属性不受同源策略的限制来实现跨域请求。在JSONP中,客户端通过动态创建script标签,向服务端发送一个请求,并指定一个回调函数的名称。服务端接收到请求后,将数据作为参数传递给指定的回调函数,…

    JavaScript 2023年5月27日
    00
  • JavaScript中的数值范围介绍

    JavaScript中的数值范围介绍 在 JavaScript 中,数值类型是一种很常用的数据类型。它可以表示整数和小数,并支持各种基本运算。但是,JavaScript中的数值类型也存在一些限制,包括数值范围和精度等问题。本文主要介绍 JavaScript 中数值类型的数值范围相关知识。 JavaScript中支持的数值范围 JavaScript 中的数值类…

    JavaScript 2023年5月18日
    00
  • Javascript添加监听与删除监听用法详解

    Javascript添加监听与删除监听用法详解 Javascript事件监听可以帮助我们监测用户的交互行为,从而进行相应操作。在实际开发中,添加和删除事件监听都是非常常见和有用的操作。下面来详细讲解Javascript添加监听与删除监听的用法。 添加监听 在Javascript中,我们可以使用addEventListener方法来添加事件监听。该方法接受三个…

    JavaScript 2023年6月10日
    00
  • js序列化和反序列化的使用讲解

    JS序列化和反序列化是Web开发中非常重要的概念,它可以将JavaScript对象序列化为JSON字符串并将其发送到服务器,或者将服务器响应的JSON字符串反序列化为JavaScript对象,以便在客户端进行处理。 在前端开发中,我们常常需要将JavaScript对象转换为JSON字符串,然后通过AJAX或其他方式将其发送到服务器。这时候就需要使用到序列化。…

    JavaScript 2023年5月27日
    00
  • 实现高性能javascript的注意事项

    实现高性能 JavaScript 的注意事项可以分为以下几个方面: 1. 减少 DOM 操作和重绘 JavaScript 操作 DOM 是非常消耗性能的,因此尽可能地减少 DOM 操作是优化性能的关键。在进行 DOM 操作时,需要注意以下几点: 将 DOM 操作前移,尽可能的减少 DOM 操作的次数,合并多次操作,比如一次性添加多个元素。 细粒度控制 DOM…

    JavaScript 2023年5月27日
    00
  • JavaScript 防抖debounce与节流thorttle

    JavaScript 防抖 debounce 与节流 throttle 在 JavaScript 中,由于一些操作会频繁触发,如缩放、滚动等,可能会造成一些性能上的问题。而防抖和节流是一些用于解决这类问题的优化手段。 防抖 debounce 所谓防抖,就是指一个函数在一定时间内无论被触发多少次,都只会执行一次。这里的时间指的就是防抖的延迟时间,只有当该时间结…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部