前言

本文主要从应用来讲数组api的一些骚操作,如一行代码扁平化n维数组、数组去重、求数组最大值、数组求和、排序、对象和数组的转化等。

上面这些应用场景你可以用一行代码实现吗?

1.扁平化n维数组

JS 面试之数组的几个不 low 操作

Array.flat(n)是ES10扁平数组的api, n表示维度, n值为 Infinity时维度为无限大。

 

2.去重

JS 面试之数组的几个不 low 操作

set是ES6新出来的一种一种定义不重复数组的数据类型。

Array.from是将类数组转化为数组。

...是扩展运算符,将set里面的值转化为字符串。

 

3.排序

JS 面试之数组的几个不 low 操作

sort是js内置的排序方法,参数为一个函数

 

4.最大值

JS 面试之数组的几个不 low 操作

Math.max()Math对象内置的方法,参数是字符串。

reduce是ES5的数组api,参数有函数和默认初始值。

函数有四个参数:

  • pre:上一次的返回值

  • cur:当前值

  • curIndex:当前值索引

  • arr:当前数组

5.求和

JS 面试之数组的几个不 low 操作

 

6.合并

JS 面试之数组的几个不 low 操作

7..判断是否包含值

JS 面试之数组的几个不 low 操作

8.类数组转化

JS 面试之数组的几个不 low 操作

类数组:表示有 length属性,但是不具备数组的方法。

callapply:改变 slice里面的 this指向 arguments,所以 arguments也可调用数组的方法。

Array.from:将类似数组或可迭代对象创建为数组。

...:将类数组扩展为字符串,再定义为数组。

 

9.每一项是否满足

JS 面试之数组的几个不 low 操作

10.有一项是否满足

JS 面试之数组的几个不 low 操作

11.对象和数组转化

JS 面试之数组的几个不 low 操作

相关文章:

  • 2022-01-07
  • 2022-02-19
猜你喜欢
  • 2022-12-23
  • 2021-07-28
  • 2022-12-23
  • 2021-12-04
  • 2021-12-29
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案