javascript - 如何优化像 "this.parentNode.parentNode.parentNode..."这样的代码?

标签 javascript

var topClick = function() {
  child = this.parentNode.parentNode.parentNode.parentNode;
  child.parentNode.removeChild(child);
  var theFirstChild = document.querySelector(".m-ctt .slt");
  data[child.getAttribute("data-id")].rank = 5;
  insertBlogs();
};

如你所见,我的代码有一部分是这样的:

this.parentNode.parentNode.parentNode.parentNode;  

是否有另一种优化代码的方法(不使用 jQuery)?

最佳答案

您可以使用非递归辅助函数,例如:

function nthParent(element, n) {
  while(n-- && element)  
    element = element.parentNode;
  return element;
}

关于javascript - 如何优化像 "this.parentNode.parentNode.parentNode..."这样的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35129687/

相关文章:

javascript - 渲染示例数据时未显示 "Mustache.js"

Javascript - 遍历数组

javascript - 在开放街道 map 中进行提名搜索

Javascript - 从字符串中删除特定字母

javascript - 将两个整数之间的所有数字相加

javascript - 使用 browserHistory.push 动态更改路由不适用于 react-router v4

javascript - 流抽象类型和函数 - 无法访问属性

javascript - 如何使用 HTML5 WebRTC 录制和保存视频

javascript - typeof 对象但不是数组

javascript - 如何从数组中删除重复值?当数组中的对象属性未定义时,我的代码失败