1 | var isArray = require('./isArray')
|
2 | var hasOwnProp = require('./hasOwnProp')
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 | function forOf (obj, iterate, context) {
|
9 | if (obj) {
|
10 | if (isArray(obj)) {
|
11 | for (var index = 0, len = obj.length; index < len; index++) {
|
12 | if (iterate.call(context, obj[index], index, obj) === false) {
|
13 | break
|
14 | }
|
15 | }
|
16 | } else {
|
17 | for (var key in obj) {
|
18 | if (hasOwnProp(obj, key)) {
|
19 | if (iterate.call(context, obj[key], key, obj) === false) {
|
20 | break
|
21 | }
|
22 | }
|
23 | }
|
24 | }
|
25 | }
|
26 | }
|
27 |
|
28 | module.exports = forOf
|