- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要你帮助创建一个函数,该函数可以扁平化空组并将其用户移回其父组。这些组是对象,它们的子对象位于数组中。
用户被创建为类构造函数中的对象
user.js
class User {
constructor(name, password, age) {
this.name = name;
this.password = password;
this.age = age;
}
}
users.js
class users {
constructor() {
this.users = {}
}
并且还隶属于类(class)承包商中的团体。
group.js
class Group {
constructor(name, parent) {
this.name = name;
this.parent = parent || null;
this.children = [];
this.users = {}
}
groups.js
class groups {
constructor() {
this.root = new Group('root');
}
因此,如果组的名称是 bar 并且用户名是 foo,您收到的日志与此类似:
Group {name:"root",parent:,children:,users:) chidren: "bar" user: USER
{name: "foo",password: "1010",age: "1010"}.
编辑我想我想做的方式是:获取组名,找到其父亲,检查父亲是否只有一个 child ,重置父亲的数组(长度= 0)
仅当有一个 child 时您才可以继续。检查该组是否有 child (如果有),并告诉他们该组是新父亲。将子级插入父级数组。
最佳答案
没有测试它,但它应该可以完成工作:
const loopTree = (tree) => {
if (tree.parent) { //if the element has no parent, no use checking if I should move to parent
let usersToUp = tree.children.length > 0 ? {} : tree.users; //if children has no items, then the users object is the users object, otherwise an empty object
Object.assign(tree.parent.users, usersToUp) //assign the users to the parent... No conditional here, if usersToUp is an empty object then this will do nothing.
if (usersToUp.keys().length > 0) { //and here I remove users from current tree, if there were users to move
tree.users = {};
}
}
tree.children.forEach(loopTree); //now I just call the same function for other children of the tree
}
从顶部组开始,如果它有父组,则检查用户是否要移动,然后移动他们。然后继续处理较低级别的元素。
由于它作用于对象引用,因此不需要任何 return 语句。
关于javascript - 在我的nodeJS应用程序中压平树上的空组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50375378/
有没有办法强制TSpeedButton重新绘制平坦? 使用触摸屏显示器时,鼠标不会移出按钮,因此即使您单击其他按钮,凸起的边框也会保留在屏幕上。 最佳答案 看起来这不是我可以在没有触摸屏的情况下重现的
我有一个包含很多 acroform 的 pdf,我对其进行了一些操作,从而生成了一个新的 pdf。所以我有 PDF-1(这是原始的)和 PDF-2(只是 PDF-1 的副本),现在我想合并它们。两个
我目前正在调查 RxJS's .merge但是我也会在这里问这个问题,因为我发现这里的解释有时非常精彩。 好的,我有一个根据用户输入打开模态窗口的表单,我订阅模态关闭事件并传回一些我将在调用/订阅服务
我是一名优秀的程序员,十分优秀!