更复杂的功能

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head> <body>
<script>
var a = [
{
'fs': 1,
"id": 1,
"name": "轻应用管理",
"childrenIds": "10,11,12,13",
"parentId": 0,
"orderNum": 1,
"url": "/lightApp/light/list",
"description": "轻应用管理",
"createTime": "2018-09-19 17:18:25",
"modifyTime": "2018-09-21 11:17:54",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": [
{
'fs': 1,
"id": 10,
"name": "轻应用列表",
"childrenIds": null,
"parentId": 1,
"orderNum": 1,
"url": "/lightApp/light/list",
"description": "轻应用列表",
"createTime": "2018-09-19 17:25:49",
"modifyTime": "2018-09-19 17:25:49",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": null
},
{
'fs': 0,
"id": 11,
"name": "轻应用信息审核",
"childrenIds": null,
"parentId": 1,
"orderNum": 2,
"url": "/lightApp/auditInfo/list",
"description": "轻应用信息审核",
"createTime": "2018-09-19 17:26:28",
"modifyTime": "2018-09-19 17:26:28",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 12,
"name": "轻应用开发审核",
"childrenIds": null,
"parentId": 1,
"orderNum": 3,
"url": "/lightApp/auditDevelop/list",
"description": "轻应用开发审核",
"createTime": "2018-09-19 17:26:52",
"modifyTime": "2018-09-19 17:26:52",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 13,
"name": "轻应用接口审核",
"childrenIds": null,
"parentId": 1,
"orderNum": 4,
"url": "/lightApp/auditInterface/list",
"description": "轻应用接口审核",
"createTime": "2018-09-19 17:27:12",
"modifyTime": "2018-09-19 17:27:12",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 2,
"name": "小程序管理",
"childrenIds": "17,18,15,14,16",
"parentId": 0,
"orderNum": 2,
"url": "/applet/builtIn/list",
"description": "小程序管理",
"createTime": "2018-09-19 17:19:36",
"modifyTime": "2018-09-19 17:19:36",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": [
{
'fs': 0,
"id": 14,
"name": "内置小程序",
"childrenIds": null,
"parentId": 2,
"orderNum": 1,
"url": "/applet/builtIn/list",
"description": "内置小程序",
"createTime": "2018-09-19 17:27:55",
"modifyTime": "2018-09-19 17:27:55",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 15,
"name": "外置小程序",
"childrenIds": null,
"parentId": 2,
"orderNum": 2,
"url": "/applet/externalSet/list",
"description": "外置小程序",
"createTime": "2018-09-19 17:28:27",
"modifyTime": "2018-09-19 17:28:27",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 16,
"name": "小程序信息审核",
"childrenIds": null,
"parentId": 2,
"orderNum": 3,
"url": "/applet/auditInfo/list",
"description": "小程序信息审核",
"createTime": "2018-09-19 17:29:17",
"modifyTime": "2018-09-19 17:29:17",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 17,
"name": "小程序开发审核",
"childrenIds": null,
"parentId": 2,
"orderNum": 4,
"url": "/applet/auditDevelop/list",
"description": "小程序开发审核",
"createTime": "2018-09-19 17:29:52",
"modifyTime": "2018-09-19 17:29:52",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 18,
"name": "小程序接口审核",
"childrenIds": null,
"parentId": 2,
"orderNum": 5,
"url": "/applet/appletInterface/list",
"description": "小程序接口审核",
"createTime": "2018-09-19 17:30:22",
"modifyTime": "2018-09-19 17:30:22",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 3,
"name": "模板管理",
"childrenIds": "19,20",
"parentId": 0,
"orderNum": 3,
"url": "/template/message/list",
"description": "模板管理",
"createTime": "2018-09-19 17:20:14",
"modifyTime": "2018-09-19 17:20:14",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": [
{
'fs': 0,
"id": 19,
"name": "消息模板管理",
"childrenIds": null,
"parentId": 3,
"orderNum": 1,
"url": "/template/message/list",
"description": "消息模板管理",
"createTime": "2018-09-19 17:31:29",
"modifyTime": "2018-09-19 17:31:29",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 20,
"name": "订单模板管理",
"childrenIds": null,
"parentId": 3,
"orderNum": 2,
"url": "/template/order/list",
"description": "订单模板管理",
"createTime": "2018-09-19 17:32:01",
"modifyTime": "2018-09-19 17:32:01",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 4,
"name": "项目管理",
"childrenIds": "21,22,23",
"parentId": 0,
"orderNum": 4,
"url": "/projects/project/list",
"description": "项目管理",
"createTime": "2018-09-19 17:20:38",
"modifyTime": "2018-09-19 17:20:38",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": [
{
'fs': 0,
"id": 21,
"name": "项目列表",
"childrenIds": null,
"parentId": 4,
"orderNum": 1,
"url": "/projects/project/list",
"description": "项目列表",
"createTime": "2018-09-19 17:32:44",
"modifyTime": "2018-09-19 17:32:44",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 22,
"name": "项目应用管理",
"childrenIds": null,
"parentId": 4,
"orderNum": 2,
"url": "/projects/application/list",
"description": "项目应用管理",
"createTime": "2018-09-19 17:33:11",
"modifyTime": "2018-09-19 17:33:11",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 23,
"name": "项目版本管理",
"childrenIds": null,
"parentId": 4,
"orderNum": 3,
"url": "/projects/versions/list",
"description": "项目版本管理",
"createTime": "2018-09-19 17:33:32",
"modifyTime": "2018-09-19 17:33:32",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 5,
"name": "信息管理",
"childrenIds": "24",
"parentId": 0,
"orderNum": 5,
"url": "/information/announcement/list",
"description": "信息管理",
"createTime": "2018-09-19 17:20:47",
"modifyTime": "2018-09-19 17:20:47",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": [
{
'fs': 0,
"id": 24,
"name": "公告列表",
"childrenIds": null,
"parentId": 5,
"orderNum": 1,
"url": "/information/announcement/list",
"description": "公告列表",
"createTime": "2018-09-19 17:34:00",
"modifyTime": "2018-09-19 17:34:00",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 6,
"name": "用户管理",
"childrenIds": "25,26,27,28",
"parentId": 0,
"orderNum": 6,
"url": "/user/registerRecord/list",
"description": "用户管理",
"createTime": "2018-09-19 17:21:02",
"modifyTime": "2018-09-19 17:21:02",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": [
{
'fs': 0,
"id": 25,
"name": "用户注册记录",
"childrenIds": null,
"parentId": 6,
"orderNum": 1,
"url": "/user/registerRecord/list",
"description": "用户注册记录",
"createTime": "2018-09-19 17:34:26",
"modifyTime": "2018-09-19 17:34:26",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": null
},
{
'fs': 0,
"id": 26,
"name": "认证申请管理",
"childrenIds": null,
"parentId": 6,
"orderNum": 2,
"url": "/user/certificationApplication/list",
"description": "认证申请管理",
"createTime": "2018-09-19 17:34:41",
"modifyTime": "2018-09-19 17:34:41",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 27,
"name": "开发者认证管理",
"childrenIds": null,
"parentId": 6,
"orderNum": 3,
"url": "/user/developerCertification/list",
"description": "开发者认证管理",
"createTime": "2018-09-19 17:35:29",
"modifyTime": "2018-09-19 17:35:29",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 28,
"name": "登录日志",
"childrenIds": null,
"parentId": 6,
"orderNum": 4,
"url": "/user/loginLog/list",
"description": "登录日志",
"createTime": "2018-09-19 17:36:03",
"modifyTime": "2018-09-19 17:36:03",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{ "id": 7,
"name": "终端管理",
"childrenIds": "29",
"parentId": 0,
"orderNum": 7,
"url": "/terminal/terminal/list",
"description": "终端管理",
"createTime": "2018-09-19 17:21:18",
"modifyTime": "2018-09-19 17:21:18",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": [
{
'fs': 0,
"id": 29,
"name": "终端管理",
"childrenIds": null,
"parentId": 7,
"orderNum": 1,
"url": "/terminal/terminal/list",
"description": "终端管理",
"createTime": "2018-09-19 17:36:34",
"modifyTime": "2018-09-19 17:36:34",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 8,
"name": "基础配置",
"childrenIds": "30",
"parentId": 0,
"orderNum": 8,
"url": "/basics/appAttribute/list",
"description": "基础配置",
"createTime": "2018-09-19 17:21:34",
"modifyTime": "2018-09-19 17:21:34",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": [
{
'fs': 0,
"id": 30,
"name": "应用属性管理",
"childrenIds": null,
"parentId": 8,
"orderNum": 1,
"url": "/basics/appAttribute/list",
"description": "应用属性管理",
"createTime": "2018-09-19 17:36:57",
"modifyTime": "2018-09-19 17:36:57",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
}
]
},
{
'fs': 0,
"id": 9,
"name": "系统管理",
"childrenIds": "31,32",
"parentId": 0,
"orderNum": 9,
"url": null,
"description": "系统管理",
"createTime": "2018-09-19 17:22:41",
"modifyTime": "2018-09-19 17:22:41",
"status": "ENABLE",
"mustUse": "YES",
"own": false,
"childrens": [
{
'fs': 0,
"id": 31,
"name": "角色管理",
"childrenIds": null,
"parentId": 9,
"orderNum": 1,
"url": null,
"description": "角色管理",
"createTime": "2018-09-19 17:40:02",
"modifyTime": "2018-09-19 17:40:02",
"status": "ENABLE",
"mustUse": "NO",
"own": false,
"childrens": null
},
{
'fs': 0,
"id": 32,
"name": "权限管理",
"childrenIds": null,
"parentId": 9,
"orderNum": 2,
"url": null,
"description": "权限管理",
"createTime": "2018-09-19 17:40:42",
"modifyTime": "2018-09-19 17:40:42",
"status": "ENABLE",
"mustUse": "NO",
"own": true,
"childrens": null
}
]
}
];
var tickMenuIdFilter = (function () {
var resultArr = new Array();
var getTickMenuId = function (obj) {
if (undefined == obj || null == obj || !obj instanceof Object) {
return;
}
if (obj.fs>0) {
console.log('obj',obj)
obj.disable=true
resultArr.push(obj.id);
}
if (null != obj.childrens && obj.childrens instanceof Array) {
for (let child of obj.childrens) {
getTickMenuId(child);
}
} } return {
filter: function (arr) {
if (!arr instanceof Array) {
return false;
}
resultArr = new Array();
for (let rootMenu of arr) {
getTickMenuId(rootMenu);
}
return resultArr;
}
}
})();
var b = tickMenuIdFilter.filter(a);
console.log("a", a);
console.log("b", b);
</script>
</body> </html>

js 遍历tree的一个例子(全遍历),更复杂的功能的更多相关文章

  1. js 遍历tree的一个例子(全遍历)

    全遍历 亲测真是有效. 工作中遇到的问题应该算是比较有价值的问题. <!DOCTYPE html> <html lang="en"> <head> ...

  2. js 遍历tree的一个例子

    小例子蕴含着到力量,我希望自己有改变自己生活的能力,自己有主宰自己命运的能力... 备注:这个例子有问题. <!DOCTYPE html> <html lang="en&q ...

  3. 【Node.js】4.从一个例子切入Node js的规范

    在开始之前,需要明确的一点就是, ①Node应用是由模块组成的,每一个文件都是一个模块,有自己的作用域. ②在这个文件里定义的变量,函数,类都是私有的,对其他的文件不可见. ③在一个文件中,也就是在一 ...

  4. 原生JS实现购物车全选多选按钮功能

    对于JS初学者来说,一个完整的购物车实现还是挺难的,逻辑功能挺多.写出完整功能,能提升不少JS基础,下面实现购物车全选多选按钮功能: 首先HTML及CSS部分: <style> table ...

  5. JS中for...in循环陷阱及遍历数组的方式对比

    JavaScript中有很多遍历数组的方式,比较常见的是for(var i=0;i<arr.length;i++){},以及for...in...循环等,这些遍历都有各自的优缺点,下面来看看各种 ...

  6. HDFS 读取、写入、遍历文件夹获取文件全路径、append

    版权声明:本文为博主原创文章,未经博主同意不得转载.安金龙 的博客. https://blog.csdn.net/smile0198/article/details/37573081 1.从HDFS中 ...

  7. 【Offer】[8] 【中序遍历的下一个结点】

    题目描述 思路分析 Java代码 代码链接 题目描述 给定一棵二叉树和其中的一个结点,如何找出中序遍历顺序的下一个结点? 树中的结点除了有两个分别指向左右子结点的指针以外,还有一个指向父结点的指针. ...

  8. PAT 1043 Is It a Binary Search Tree (25分) 由前序遍历得到二叉搜索树的后序遍历

    题目 A Binary Search Tree (BST) is recursively defined as a binary tree which has the following proper ...

  9. 【数据结构与算法Python版学习笔记】树——树的遍历 Tree Traversals

    遍历方式 前序遍历 在前序遍历中,先访问根节点,然后递归地前序遍历左子树,最后递归地前序遍历右子树. 中序遍历 在中序遍历中,先递归地中序遍历左子树,然后访问根节点,最后递归地中序遍历右子树. 后序遍 ...

随机推荐

  1. leetcode443

    使用两个数组分别记录字符和对应的数字,然后清除原来的vector,重新向里面添加元素.注意判断1个字符时,不将'1'加入vector. int compress(vector<char>& ...

  2. Win 2008 R2安装SQL Server 2008“性能计数器注册表配置单元一致性”失败的解决办法

    Win 2008 R2安装SQL Server 2008“性能计数器注册表配置单元一致性”失败的解决办法(2011-02-23 19:37:32) 转载▼   今天在惠普服务器上安装数据库2008时, ...

  3. 由浅入深漫谈margin属性

    margin 在中文中我们翻译成外边距或者外补白(本文中引用外边距).他是元素盒模型(box model)的基础属性. 一.margin的基本特性 margin 属性包括 margin-top, ma ...

  4. android下db-journal文件作用

    在学习数据库sqlite的过程中,发现在源文件包里除了生成db类型的数据库文件,还生成了db-journal类型的同名文件 查询网上资料后知道该文件是sqlite的一个临时的日志文件,主要用于sqli ...

  5. 安装nodemon热启动

    1.安装: cnpm i nodemon -g 2.执行 nodemon .\launch.js .\config_preview\ .\launch.js 为我要启动的脚本文件 .\config_p ...

  6. String/StringBuilder 类 用对象数组实现登录注册功能

    一.需求说明:实现用户注册.登陆功能: 程序中使用一个长度为3的对象数组,存储用户的登录名和密码: 例如如下格式: 登录名    密码      生日           爱好 zhangsan 11 ...

  7. 高性能MySQL笔记-第5章Indexing for High Performance-003索引的作用

    一. 1. 1). Indexes reduce the amount of data the server has to examine.2). Indexes help the server av ...

  8. html5 Web Workers.RP

    虽然在JavaScript中有setInterval和setTimeout函数使javaScript看起来好像使多线程执行,单实际上JavaScript使单线程的,一次只能做一件事情(关于JavaSc ...

  9. kaggle House_Price_XGBoost

    kaggle House_Price_final 代码 import numpy as np import pandas as pd from sklearn.ensemble import Rand ...

  10. 基于jQuery的Tooltip

    近来,要开发一个关务管理系统,为了增加系统美观度,自己开发了一个基于jQuery框的的小插件,与大家分享一下,希望大家能给我提出宝贵修改意见. 下面开发说明使用方法和内容: 一.引用jQuery框架, ...