首页 > 解决方案 > 在使用元素值作为 JavaScript 中的参数调用函数之前检查元素是否存在的最快方法

问题描述

我想检查DOM中是否存在元素,如果存在,则使用元素的值作为参数调用函数。例如:

if(document.getElementById('msg')) displayMsg(document.getElementById('msg').value);

这是实现这一目标的最快方法吗?

标签: javascriptperformance

解决方案


这是实现这一目标的最快方法吗?

不,但它非常、非常、非常、非常快。

最快的方法是记住第一次getElementById调用的结果而不是重复它:

var msg = document.getElementById('msg')
if(msg) displayMsg(msg.value);

getElementById非常、非常、非常、非常快,你必须在一个紧密的循环中执行数十万次(可能是数百万次)才能让任何人感知差异。


推荐阅读