UNPKG

apass-opensdk-hugong

Version:

飞书Apass低代码平台-飞书开放平台-相关的接口整合和常用的方法整合

46 lines (42 loc) 1.18 kB
const Url = require('./url') const File_ = require('./file_') const Date_ = require('./date_') class Utils{ #hg = null constructor(hg){ this.#hg = hg this.url = new Url(hg) this.file = new File_(hg) this.date = new Date_(hg) } /** * 数组分割 * @param {*} list * @param {*} chunkSize 分割长度 * @param {*} callback(item) 分割后回调(不传递则方法返回切割长度后的数组) * @returns */ async splitArray(list, chunkSize, callback) { const result = []; this.#hg.log4('splitArray len ', list.length) for (let i = 0; i < list.length; i += chunkSize) { const batch = list.slice(i, i + chunkSize) this.#hg.log8('splitArray item ',i, i + chunkSize) if(callback){ await callback(batch) continue } result.push(batch); // 使用 slice 方法按 chunkSize 进行切割 } return result; } toMD5(data){ const crypto = require('crypto'); const hash = crypto.createHash('md5'); hash.update(data); const md5Hash = hash.digest('hex'); this.#hg.log4(`MD5 Hash of "${data}": ${md5Hash}`) return md5Hash } } module.exports = Utils