document.getElementbyId与简写(Id.someMethod)

时间:2016-07-03 00:39:51

标签: javascript html

当您可以使用简写document.getElementById时,写出Id.something是否有任何好处?我很感兴趣,因为我在我的教程中看到了一些代码,声明变量x等于document.getElementById,然后他们使用该变量,而不只是使用简写:

示例:

<code>
    var timeDisplay = document.getElementById("time");
    timeDisplay.innerHTML = message;
</code>

VS.

<code>
    time.innerHTML = message;
</code>

1 个答案:

答案 0 :(得分:3)

扩展我的评论,你永远不应该使用“速记”,因为它是危险和令人困惑的。

这很危险,因为其他人可以在代码执行之前定义window.time属性,现在整个代码都会中断:

// some one put this in the global scope
var time = new Date();

// your code
time.innerHTML = message; // nope!

https://jsfiddle.net/DerekL/6yz8j7dx/

甚至不是主观选择。这是你几乎不应该做time.something

关于为何令人困惑的例子:

<div id="history"></div>

history.textContent = "Will it work?";

猜猜会发生什么?