数组相关

有关数组的一些题型

# 将数组扁平化并去重

一开始学js的时候经常会让你用遍历来实现数组去重,但是自从es6的Set数据结构一出,好像这个数组去重也没什么难的,就连数组扁平化也再es6后变得简单。总的来说用的都是原生方法

Array.from(new Set(array.flat(Infinity))) // 这里的Array.from 也可以换成结构[...]

# Array.sort()

对数组[3, 15, 8, 29, 102, 22],使用sort后,会得到什么? 一开始看到这道题感觉这不是侮辱人吗?这不就是排序吗?但再一想事情恐怕没那么简单,平常排序但话是会在sort中传一个函数,来表示是生序或降序排列。单单使用而不传函数进去还真没试过。

[3, 15, 8, 29, 102, 22].sort() // (6) [102, 15, 22, 29, 3, 8]

不是意料,果然是才不到的答案。可这是为什么呢?

答案是 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。

setState