为了账号安全,请及时绑定邮箱和手机立即绑定

鄙人小白,不懂此处testDiv.appendChild(obj);testDiv.removedChild(obj);?

try{
    testDiv.appendChild(obj);
    testDiv.removedChild(obj);
   }catch(e){
       return false;
       }


正在回答

1 回答

try{

    testDiv.appendChild(obj); //把要检验的obj作为子节点添加给testDiv节点

    testDiv.removedChild(obj);//把testDiv中为obj的子节点移除

   }catch(e){

       return false;//如果以上两者运行中有错误则返回false 

       }

比如你传入的是变量a 但是变量a不是一个节点元素,所以就不能作为节点被添加到testDiv中或者被删除,则会返回false,而如果a是被createElementNode(’a‘)之后,则这个a就是一个被创建的元素节点,可以被添加到任何一个元素节点作为子节点或者被删除,而案例中多出这一步检验也是因为当你使用isElement这个方法检验obj是不是一个元素节点的时候容易出错,也就是可以把一个声明中有nodetype=1的json对象也当做成元素节点,很显然这个方法不严谨也不符合检测的目的,所以才要检测真假:【如果obj本身就是元素节点,则就必然可以作为子节点被添加和被删除,则返回判断结果为真!

如果obj本身是有声明过nodetype=1的json对象,即使obj在第一层if判断中nodetype=1通过,则第二层检测到他不能作为子节点被添加和被删除,则obj必然不是元素节点,返回判断结果为假!】


3 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

鄙人小白,不懂此处testDiv.appendChild(obj);testDiv.removedChild(obj);?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信