Javascript 返回对象与变量对象的函数

Javascript 返回对象与变量对象的函数,javascript,performance,Javascript,Performance,如果我没有使用正确的术语,我会提前道歉 我试图在创建时将html元素初始化为对象内部的变量。这是我目前的设置 function elements(elementID){ this.element = function(){ return document.getElementById(elementID); } } 但我担心这会影响性能,我希望它能像这样工作 function elements(elementID){ this.element = document.getE

如果我没有使用正确的术语,我会提前道歉

我试图在创建时将html元素初始化为对象内部的变量。这是我目前的设置

function elements(elementID){
  this.element = function(){
    return document.getElementById(elementID);
  }
}
但我担心这会影响性能,我希望它能像这样工作

function elements(elementID){
  this.element = document.getElementById(elementID);
} 
但这使得我必须等待初始化元素,否则我会得到null

哪一种性能更好?第一次安装使用后,对象是否已销毁?我的程序在开始时出现了一个明显的问题,我不确定这是否是问题的根源


当每50毫秒更新一次动画时,该函数的4次迭代(仅一次)是否足以导致该问题?

这不太可能成为您的瓶颈,除非您有一个非常大的DOM(10000个或更多节点),并且该函数的调用次数超过10000次。顺便说一下,这个代码看起来真的很奇怪。对于我当前的测试,只需
functionbyid(id){returndocument.getElementById(id)}
4就可以了。但这取决于数组中有多少个元素。它只在开始时被调用。elements函数是一个对象构造函数。我需要一个引用对象内部html元素的变量。我无法真正遵循此函数的设计意图(似乎无意中依赖全局变量),但这似乎不太可能造成瓶颈。您是否尝试过使用浏览器的开发工具来找出它花费最多时间的功能?目前正在阅读如何做到这一点。@Katana314我真的希望OP使用的是
var els=new elements('some-id')
而不是
var els=elements('some-id')
。OP,你的答案是否定的,无论你使用哪种函数,4次迭代都不会有任何区别