UNPKG

508 BJavaScriptView Raw
1'use strict';
2var classof = require('../internals/classof');
3var getMethod = require('../internals/get-method');
4var isNullOrUndefined = require('../internals/is-null-or-undefined');
5var Iterators = require('../internals/iterators');
6var wellKnownSymbol = require('../internals/well-known-symbol');
7
8var ITERATOR = wellKnownSymbol('iterator');
9
10module.exports = function (it) {
11 if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)
12 || getMethod(it, '@@iterator')
13 || Iterators[classof(it)];
14};