1254e9f041073007950174e889f0015a87f3db58
[dotfiles/.git] / for-each.js
1 require('../../modules/web.dom-collections.iterator');
2 var forEach = require('../array/virtual/for-each');
3 var classof = require('../../internals/classof');
4 var ArrayPrototype = Array.prototype;
5
6 var DOMIterables = {
7   DOMTokenList: true,
8   NodeList: true
9 };
10
11 module.exports = function (it) {
12   var own = it.forEach;
13   return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.forEach)
14     // eslint-disable-next-line no-prototype-builtins
15     || DOMIterables.hasOwnProperty(classof(it)) ? forEach : own;
16 };