1、快速生成100个只有name的用户
new Array(100).fill(null).map((item,index) => (
{name: `name${index+1}`}
))
Array.from({length: 100}, (v,i) =>(
{name: `name${index+1}`}
))
2、快速生成100个年龄随机的在100以内的用户
const createValues = (creater, length = 10) => Array.from({length}, creater)
const createUser = (v,i) => {
return {
name: `user-${i+1}`,
age: (Math.random()*100 >> 0
}
}
const user = createValues(createUser, 100)
3、去掉数组中的假值 false,0, undefined, NaN, null
const arr = [false, 0, undefined, '', NaN, 9, true, null]
const res = arr.filter(Boolean)
4、去掉数组对象中的重复值
function unique(arr = [], key){
const keyValues = new Set()
let val = ''
return arr.filter(obj => {
val = obj[key]
if(keyValues.has(val)){
return false
}
keyValues.add(val)
return true
})
}
const arr = [{a: 1}, {a:2},{a: 1}]
console.log(unique(arr, 'a'))
5、找出数组中的最大值和最小值
const array = [1,4,1555,9]
Math.max.apply(Math, array)
Math.min.apply(Math, array)
6、生成序列
const createValues = (creater, length = 10) => Array.from({length}, creater)
const createRange = (start, stop, step) => createValues((v,i) => start + i * step, (stop - start) / step + 1)
const values = createRange(1, 10, 3)
console.log(values)