Javascript安全地检查嵌套的子项
我的问题和你的差不多 但是,我需要能够对dom执行相同的操作,而不是在字典中使用点符号,例如:Javascript安全地检查嵌套的子项,javascript,Javascript,我的问题和你的差不多 但是,我需要能够对dom执行相同的操作,而不是在字典中使用点符号,例如: div[0]。子项[1]。子项[0]。子项[1] 现在我能做的就是 if(div[0]&&div[0]。children[1]&&div[0]。children[1]。children[0]… 但这会使我的代码爆炸。我曾尝试在链接问题中使用投票数最高的答案,但在添加了子项后,这不起作用。在其中,每次都会抛出false。尝试通过try/catch访问它对确实包含这些条目的div有效 使用lodash的g
div[0]。子项[1]。子项[0]。子项[1]
现在我能做的就是
if(div[0]&&div[0]。children[1]&&div[0]。children[1]。children[0]…
但这会使我的代码爆炸。我曾尝试在链接问题中使用投票数最高的答案,但在添加了子项后,这不起作用。在其中,每次都会抛出false。尝试通过try/catch访问它对确实包含这些条目的div有效
使用
lodash
的get
可以安全地工作,但我不想部署6kb的这个模块来实现其他可能实现的功能。您不能使用css选择器并执行querySelector调用来检查吗?比如div>:第n个孩子(2)>:第n个孩子(1)>:第n个孩子(2)
?谢谢,这可能是一个很好的解决方案,但我还没有弄清楚如何从我的JS访问变量。在SO站点上运行:divOb=document.getElementsByClassName('JS-gps-track-nav-links--link')[0];document.querySelector([data name=“+divOb+”]);
如果可能,您应该使用.querySelector
而不是document.querySelector
(如果可能有多个元素匹配,则使用.querySelector all
)