data processing
npm install simple-dnumber 元素
bash
simpArr_Num(b_3, {getMax: true, getMin: true});
`
data_item_string
数组里的元素为 string 元素
去重 repeat:true
得到集合每个元素出现的次数 same: true ,100 和 "100" 视为同一个
`bash
simpArr_Str(b_1, {same: true, repeat:true});
`
data_item_object
数组里的元素为 object 元素
为每个item添加索引:key:true (渲染列表时有时需要key=index)
filterObj: {[key]:[value]} 筛选得到,对应所出现的item阵列:{e: [{……},{……}], f: …… ……, filterIndex;[]} ,filterResult为出现的索引集合
sortKey:[arg1, arg2] 排序默认取arg1的值排序,相同值的话则取arg2的值排序
direction: "asc" | "desc" 排序字段是升序还是降序,一定要配合sortKey使用, 因为要匹配 sortKey:[] 里的key
repeatKeys: ["a", "b","f"] 以repeatKeys里的元素为key取得每条item对应key的value值,拼接在一起,查看是否有相同的 repeatKeysResult["res"]为最终不重复的集合,repeatKeysResult["repeat"]为筛选出重复的item
max:["num"]: 得到数组里[num]对应key的最大值的那条item
min:["num"]: 得到数组里[num]对应key的最小值的那条item
keyVlaue:{key:"title", value:"time", child:["children", "child"]} key对应最终返回的对象那个Key,value对应的是你所要取的值那个Key, child对应你所要遍历几层才能拿到value
selectAmountKey: [key, key] key是数组单个元素里对应的key , 最终计算出数组元素以key的值为参考,得到[value]出现的次数
`bash
simpArr_Obj(a, {
key:true,
filterObj:{e: "test",f: "0f0"},
sortKey:["num", "num1"],
direction: "asc", //升序和降序 Ascending Descending
repeatKeys: ["a", "b","f"],
max:["num"],
min:["num"]
})
`
`bash
simpArr_Obj(d, {
keyVlaue: {key: "title", value: "time", child: ["children", "child"]}
})
`
SetArray()
不断往数组里unshift最新的元素,并且不能有重复的,不能超过设定长度
setArray.spliceItem(33, 4):预想阵列length为4,传入第一个数为33,后续继续调用方法传入,每次传入unshift到阵列的第0个,如果下次传入的值在之前的阵列里存在,就把之前那个旧值删掉,新值依旧unshift在第0个,之后查看最新的阵列是否大于length为4,如果大于则切掉后面多余的
setArray.spliceItem(obj, key, length):预想阵列长度length,obj为预想插入的itemObj, key为预想用来判断的[key]:[value]
`bash
const setArray = new SetArray();
const { spliceItem, spliceObjItem } = setArray;
`
SetBroad()
广播效果,排序,以及类似主播开和关的socket推送
sortObjItem(c, "status"): 上面定义的c数组,以"status"为key排序,筛选出true或false的值
subscribeMes(msg, "status", "name"): 接收一条msgObj, 通过"status", "name"为key的对应的值,来改变原数组对应name的status值,类似于主播开播和关播的推送状态到前端
`bash
const setBroad = new SetBroad();
const {sortObjItem, subscribeMes, resSort: {active, other, result}} = SetBroad();
`
var msg = {name:"jack", status: true}
var msg1 = {name:"skip", status: true}
var msg2 = {name:"ben", status: false}
`bash
sortObjItem(c, "status") 需要先sort一遍
setBroad.subscribeMes(msg, "status", "name")
setBroad.subscribeMes(msg1, "status", "name")
setBroad.subscribeMes(msg2, "status", "name")
``