// list数组转tree数组
function list2Tree(list, keyName, keyPname, keyValue = '') {
let children = list.filter(item => item[keyPname] == keyValue);
return children.map(item => {
item.children = list2Tree(list, keyName, keyPname, item[keyName]);
return item;
})
}
// tree数组转list数组
function tree2list(tree) {
const list = []
const queue = [...tree]
while (queue.length) {
const node = queue.shift()
const children = node.children
if (children) {
queue.push(...children)
}
list.push(node)
}
return list
}
// 随机字串
function randomString(len) {
len = len || 8;
let $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/
let maxPos = $chars.length;
let str = '';
for (let i = 0; i < len; i++) {
str += $chars.charAt(Math.floor(Math.random() * maxPos));
}
return str;
}
// queryString转化成对象
function param2Obj(url) {
const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ')
if (!search) {
return {}
}
const obj = {}
const searchArr = search.split('&')
searchArr.forEach(v => {
const index = v.indexOf('=')
if (index !== -1) {
const name = v.substring(0, index)
const val = v.substring(index + 1, v.length)
obj[name] = val
}
})
return obj
}
util函数
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 在这个java15都出来了的年代,我偶尔还能听到一种说法叫java8新特性,有点太扯了。现在的程序员必要技能:la...
- kubernetes 版本基于1.5.0, 版本升级很快,但是应该过程都差不多 文件夹解释 /kubernetes...
- 1.0 当然,这些都只是抛砖迎玉的皮毛。 但是,所谓“见微知著”,通过查阅API文档,并结合本篇中的示范代码,做到...
- java.util.Arrays 类就是为数组而生的专用工具类,基本上常见的对数组的操作,Arrays 类都考虑到...