Javascript 正确扩展DOM

Javascript 正确扩展DOM,javascript,dom,methods,prototype,extending,Javascript,Dom,Methods,Prototype,Extending,我想创建一个在每个HTMLDOM对象中都可用的自定义方法。我通过原型化“元素”对象实现了预期的结果,然而,从我所读到的来看,这可能会导致很多问题。从我所读到的内容来看,建议使用对象包装器。我该怎么做呢 Element.prototype.myOwnMethod=函数(param){ log(`${this}:${param}`); } 文件.body.myown方法(“abc”); //[对象HTMLBodyElement]:abc 检索元素时,您可以首先调用一个函数,该函数返回一个包含元素和自

我想创建一个在每个HTMLDOM对象中都可用的自定义方法。我通过原型化“元素”对象实现了预期的结果,然而,从我所读到的来看,这可能会导致很多问题。从我所读到的内容来看,建议使用对象包装器。我该怎么做呢

Element.prototype.myOwnMethod=函数(param){
log(`${this}:${param}`);
}
文件.body.myown方法(“abc”);
//[对象HTMLBodyElement]:abc

检索元素时,您可以首先调用一个函数,该函数返回一个包含元素和自定义函数的对象,保持基本元素不变,如下所示:

const setText=函数(newText){
this.elm.textContent=newText;
}
const selectElement=选择器=>{
const elm=document.querySelector(选择器);
返回{elm,setText};
}
常数a=selectElement('a');
常数b=selectElement(“#b”);
a、 setText('123');
b、 setText('456');
a、 elm.style.color='绿色'
abc

def
。您需要在此处发布问题,而不是指向您的网站或任何第三方网站的链接。此外,不要发布代码、数据、错误消息等的图像-将文本复制或键入问题中。有人可能会感兴趣地解释说,
setText
必须以这种方式实现,而不是作为箭头函数来实现,因为对
的解释此
关键字在箭头函数中的行为与预期不符:)这应该设置为具有方法的构造函数,然后,您很快就会得到jQuery、Protrotype.js或其他许多DOM库中的任何一个。