| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- class JSFun {
- /**
- * 关键字去重
- * @param arr 数组
- * @param key 关键字
- * @returns 去重后
- */
- unique(arr, key) {
- let res = []
- let obj = {}
- for (let i = 0; i < arr.length; i++) {
- if (!obj[arr[i][key]]) {
- res.push(arr[i])
- obj[arr[i][key]] = true
- }
- }
- return res
- }
- /**
- * 同步睡眠
- * @param {Number} ms
- * @returns
- */
- sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms))
- /**
- * 多维数组转一维
- * @param {Array} arr
- * @returns
- */
- flatten(arr) {
- return [].concat(
- ...arr.map(x => (Array.isArray(x) ? this.flatten(x) : x))
- )
- }
- /**
- * 随机数
- * @param {minNum} minNum 最小值
- * @param {maxNum} maxNum 最大值
- * @return {Number} 返回一个最大值和最小值之间的随机数
- */
- randomNum(minNum, maxNum) {
- switch (arguments.length) {
- case 1:
- return parseInt(Math.random() * minNum + 1, 10)
- case 2:
- return parseInt(Math.random() * (maxNum - minNum + 1) + minNum, 10)
- default:
- return 0
- }
- }
- }
- export default JSFun()
|