JS如何获取节点的最深(最后)子节点
JS How to get the deepest (last) children of a node
我想获取一个节点的所有子节点并在 JS 中对它们使用 .click()
方法。
我没有发现比写这个脚本更好的方法,希望它能帮助别人:
const getLastChildren = (parent: Element): Element[] => {
return Array.from(parent.children).reduce<Element[]>((acc, node) => {
const children = Array.from(node.children);
if (children.length === 0) {
acc.push(node);
return acc;
}
return [...acc, ...getLastChildren(node)];
}, []);
};
(没有打字稿):
const getLastChildren = (parent) => {
return Array.from(parent.children).reduce((acc, node) => {
const children = Array.from(node.children);
if (children.length === 0) {
acc.push(node);
return acc;
}
return [...acc, ...getLastChildren(node)];
}, []);
};
我想获取一个节点的所有子节点并在 JS 中对它们使用 .click()
方法。
我没有发现比写这个脚本更好的方法,希望它能帮助别人:
const getLastChildren = (parent: Element): Element[] => {
return Array.from(parent.children).reduce<Element[]>((acc, node) => {
const children = Array.from(node.children);
if (children.length === 0) {
acc.push(node);
return acc;
}
return [...acc, ...getLastChildren(node)];
}, []);
};
(没有打字稿):
const getLastChildren = (parent) => {
return Array.from(parent.children).reduce((acc, node) => {
const children = Array.from(node.children);
if (children.length === 0) {
acc.push(node);
return acc;
}
return [...acc, ...getLastChildren(node)];
}, []);
};