- 数组的原生方法
基本操作:pop push shift unshift slice splice
查找: find findIndex indexOf includes every some findLast findLastIndex lastIndexOf
遍历: forEach map filter sort
迭代: reduce
合并: concat
拍平:flat flagMap
其他: fill, join reverse copyWith
对象上:keys values entires
- 常见的位运算符号
&
|
~
^
<<
>>
>>>
- 为什么函数的 arguments 参数是类数组而不是数组?
存在 callee name 等属性
创建的 DOM 操作
use strict 的意思?
并发操作
async function sleep(n, name = 'test') {
return new Promise(resolve => {
console.log(n, name, 'start')
setTimeout(() => {
console.log(n, name, 'end', '------------')
resolve({ n, name })
}, n * 1000)
})
}
async function start() {
let runer = limit(2)
let tasks = [
() => sleep(1, '吃饭'),
() => sleep(1, '吃饭'),
() => sleep(1, '吃饭'),
() => sleep(1, '吃饭'),
].map(runer)
let result = await Promise.all(tasks)
console.log(result, 'end')
}
// @think 如果任务有优先级呢?
start()
// 实现一个 limit
function limit(max) {
}