这题的测试机有问题,测试用例在浏览器中明明输出的是 true,它非得说我输出的是null
function dom2json() {
  let parentNode = document.querySelector("#jsContainer");
  return getNodeJson(parentNode);
}

function getNodeJson(node){
  let obj = {};
  
  // obj.tag = node.nodeType == "3" ? "text" : node.tagName.toLowerCase();
  // 【需求】5、纯文本也视为一个节点, json格式为 {tag: 'text', content: '文本内容'},content为文本内容执行trim后的结果,如果该结果为空,则忽略当前节点
  if(node.nodeType == "3"){
    if(!node.textContent.trim()) return;
    obj.tag = "text";
    obj.content = node.textContent.trim();
  }else{
    obj.tag = node.tagName.toLowerCase();
    obj.attributes = {};
    obj.children = [];
    // 收集属性值
    [...node.attributes].map(el=> {
      obj.attributes[el.name] = el.value;
    })
    node.childNodes.forEach(item=>{
      if(!getNodeJson(item)) return;
      obj.children.push(getNodeJson(item));
    })
  }
  return obj;
}