2016-02-05 45 views
4

我厌倦了写作和阅读getElementByIdgetElementsByTagName ...让我的编程更难。JS重命名方法

所以我想重新命名它们。我希望他们是getId,getTagsgetClasses

这是一个微图书馆,我以后。我怎样才能得到最低的CPU使用率的结果?

至少var doc = document;很容易。

+0

因此使自己的职能,并呼吁他们... – epascarello

+0

'VAR的getId = document.getElementById.bind(文件);' – dandavis

回答

3

只分配它们。

var doc = document; 
 
doc.getId = doc.getElementById; 
 
doc.getTags = doc.getElementsByTagName; 
 
doc.getClasses = doc.getElementsByClassName; 
 
alert(doc.getId('foo').className);
<div id="foo" class="classy"></div>

如果你希望能够留出doc.,你需要定义函数,e.g:

function getId(id) { 
    return document.getElementById(id); 
} 
+0

控制台返回_Cannot获得财产“的getElementById” undefined_的(第一种方式) – Krupp

+0

它的工作原理当我尝试它。你确定你在设置'doc.getElementById'之前设置了'doc'吗? – Barmar

+0

确保所有'doc'的用途都在它被分配的范围内。 – Barmar

1

功能是在Javascript中的一等公民。您可以将它们分配给变量。因此,您可以将新功能分配到document,它们将可用。

document.getId = document.getElementById; document.getTags = document.getElementsByTagName; document.getClasses = document.getElementsByClassName;

0

为什么不直接使用jQuery? getElementById变成$.("#theID")。您可以用$截断“选择器”。

+1

每个大型图书馆都会杀死CPU ......并且这不是我的风格 – Krupp

+0

几百毫秒与繁琐的编码...... – ic3man7019

+0

这完全是一个偏好问题,当然。你没有错。我不是故意听起来像个混蛋。 – ic3man7019