| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 | | // DOM-Level-1-compliant structure |  | var NodePrototype = require('./node'); |  | var ElementPrototype = module.exports = Object.create(NodePrototype); |  |   |  | var domLvl1 = { |  |     tagName: "name" |  | }; |  |   |  | Object.keys(domLvl1).forEach(function(key) { |  |     var shorthand = domLvl1[key]; |  |     Object.defineProperty(ElementPrototype, key, { |  |         get: function() { |  |             return this[shorthand] || null; |  |         }, |  |         set: function(val) { |  |             this[shorthand] = val; |  |             return val; |  |         } |  |     }); |  | }); | 
 |