JS算法常用操作

97 阅读1分钟

Array

初始化一个长度为n的数组

[element0, element1, ..., elementN]

// construct from elements
new Array(element0, element1, ..., elementN)

// construct from array length
new Array(arrayLength)

将数组元素全部赋值为指定数值

Array.fill(value)
Array.fill(value, start)
Array.fill(value, start, end)

初始化一个单数数组

Array.from({length: 5}, (v, i) => 2*i + 1)

初始化一个m*n二维Boolean数组

Array.from(Array(m), v => Array(n).fill(true))

字符串转为数组

Array.from(str)

数组增删改查

Array.prototype.pop() // 从一个数组中删除并返回最后一个元素。
Array.prototype.push() // 向数组末尾添加元素并返回新的length属性
Array.prototype.shift() // 从一个数组中删除并返回第一个元素
Array.prototype.unshift() // 向数组开头添加元素并返回新的length属性
Array.prototype.slice(start, end) // 返回一个浅拷贝数组,支持负数
Array.prototype.splice(start, deleteCount, item1,item2,...) //在指定位置删除或者增加元素,返回被删除的元素数组
Array.prototype.at() //返回指定位置的元素,支持负数

Map

Map.prototype.get(key) // 获取值
Map.prototype.set(key, value) // 设置值
Map.prototype.delete(key) // 删除值
Map.prototype.has(key) // 查找是否存在某值
Map.prototype.clear() //清空值
Map.prototype.size //获取键值对个数

Set

Set.prototype.values() // 获取值
Set.prototype.add(value) // 增加值
Set.prototype.clear() // 清空值
Set.prototype.size // 获取键值对个数