虽然前面的代码可能显得异常繁琐和不实用,但是在 JavaScript 中使用这种类型的封装可以实际使用变量。在下面的示例中,我们使用相同的概念来获取未定义数量的 HTML 元素的 ID。
var elementIds = [],
elements = ['message','fillOrStroke','sizePicker','colorPicker']; //The items in this array could be defined automatically via an input, database query, event, etc.
elements.forEach( (element) => {
elementIds[element] = document.getElementById(element);
});
此示例根据每个元素的 ID 声明变量变量(elementIds中的键) ,并将所述元素的节点指定为每个变量的值。由于通常不鼓励在 JavaScript 中使用全局变量,因此给变量一个惟一的作用域(在本例中,在 elementIds数组中声明它们)不仅简洁,而且更负责任。