simple-d v1.0.29
Simple Data
主要是集合的处理,收集一些以及工作中用到过,或者会用到的一些集合处理方法,不喜勿喷,励志做一个合格的小开发
let b_2 = 12,343,44,33,-132,0,-1,31,3,4,65,-9,0,3,11,1,2
let d = [ // { // title: "dragon", num: 440, children: {money: "25000", time: 12},{money: "25000", time: 13},{money: "25000", time: 6} // }, // { // title: "jack", num: 227, children: {money: "35000", time: 48},{money: "25000", time: 24},{money: "25000", time: 36} // }, // { // title: "ben", num: 428, children: {money: "30000", time: 31},{money: "30000", time: 22},{money: "25000", time: 100000} // }, { title: "skip", num: 428, children: [ {base: "2019", angele: true, child: {time: 324}, {time: 100}, {time: 475} } ] }, { title: "duck", num: 338, children: [ {base: "2017", angele: true, child: {time: 3424}, {time: 70}, {time: 71} } ] } ]
data_item_array
data_item_number
数组里的元素为 number
元素
最大值 getMax: true
最小值 getMin: true
simpArr_Num(b_3, {getMax: true, getMin: true});
data_item_string
数组里的元素为 string
元素
去重 repeat:true
得到集合每个元素出现的次数 same: true ,100 和 "100" 视为同一个
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
出现的次数
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"]
})
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
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
值,类似于主播开播和关播
的推送状态到前端
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}
sortObjItem(c, "status") 需要先`sort`一遍
setBroad.subscribeMes(msg, "status", "name")
setBroad.subscribeMes(msg1, "status", "name")
setBroad.subscribeMes(msg2, "status", "name")
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago