JavaScript - node.parentElement 是不是被视为 DOM 访问? [关闭]

Posted

技术标签:

【中文标题】JavaScript - node.parentElement 是不是被视为 DOM 访问? [关闭]【英文标题】:JavaScript - Is node.parentElement considered DOM access? [closed]JavaScript - node.parentElement 是否被视为 DOM 访问? [关闭] 【发布时间】:2021-09-27 08:33:48 【问题描述】:

我正在尝试了解有关访问和使用 DOM 对象的最佳实践。我有一个脚本,每次单击单元格时,我通过调用 td.parentElement.cells 来获取表 td 的兄弟单元格。这是否被认为是最佳实践,还是我需要创建和初始化每个表格行的单元格数组,并以这种方式搜索 td 的相应单元格?

谢谢。

【问题讨论】:

这取决于你问谁。有人会说根本不遍历 DOM 并将状态/内容保留在 JS 中。其他人不介意。无论哪种方式,这是一个意见 【参考方案1】:

通常遍历 DOM 是一种老式且痛苦的编程方式。它适用于进行单个修改,但是您的程序修改 DOM 越多,就越难以在心理上对正在或可能正在发生的事情进行建模。

正是由于这个原因,前端框架才存在。

你可以跳到几十厘米高的空中。如果你非常努力地练习,甚至是几米。

但这并不能真正为制造长距离飞行的飞机做出贡献:进步的表象是虚幻的。

看看这里,看看当您不必遍历 DOM 时它是多么容易。 https://vuejs.org/v2/guide/#Declarative-Rendering

权衡

在回答您的问题时,是的,它们确实增加了开销。如果最小化到千字节级别对您来说至关重要,那么是的,您应该直接访问 DOM,因为这将占用最少的代码,因此在该约束下工作是一种很好的做法。

但是,在少数情况下将代码减少 20-50k 至关重要。问问自己,考虑到您的网页多年来可能会如何发展,您愿意花多少时间更新遍历 DOM 的代码以进行编辑。额外的程序员时间(最终用户不会注意到或欣赏)是否值得,因为可以选择学习一些可以扩展您的能力并做更多事情的东西?

【讨论】:

感谢您的回复。前端框架不会增加应用程序占用空间的开销吗?这是我试图避免的。 谢谢,尤里卡。我想我从你的反馈中得到了我需要的东西。我一定会更多地了解前端框架。目前,我将采用目前的方法并在找到可行的解决方案后进行优化。

以上是关于JavaScript - node.parentElement 是不是被视为 DOM 访问? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

javascript JavaScript isset()等效: - JavaScript

JavaScript 使用JavaScript更改CSS(JavaScript)

JavaScript之基础-1 JavaScript(概述基础语法)

前端基础-JavaScript的基本概述和语法

JavaScript

JavaScript