cleaner ForEach loops in common.js

This commit is contained in:
Jeff Nusz 2016-09-02 12:55:21 -07:00
parent e63856cb14
commit 85ee981be4

View File

@ -25,14 +25,12 @@ const Common = {
extend: function(target) { extend: function(target) {
this.each(ARR_SLICE.call(arguments, 1), function(obj) { this.each(ARR_SLICE.call(arguments, 1), function(obj) {
if (!this.isUndefined(obj)) { const keys = this.isObject(obj) ? Object.keys(obj) : [];
const keys = Object.keys(obj);
keys.forEach(function(key) { keys.forEach(function(key) {
if (!this.isUndefined(obj[key])) { if (!this.isUndefined(obj[key])) {
target[key] = obj[key]; target[key] = obj[key];
} }
}.bind(this)); }.bind(this));
}
}, this); }, this);
return target; return target;
@ -40,14 +38,12 @@ const Common = {
defaults: function(target) { defaults: function(target) {
this.each(ARR_SLICE.call(arguments, 1), function(obj) { this.each(ARR_SLICE.call(arguments, 1), function(obj) {
if (!this.isUndefined(obj)) { const keys = this.isObject(obj) ? Object.keys(obj) : [];
const keys = Object.keys(obj);
keys.forEach(function(key) { keys.forEach(function(key) {
if (this.isUndefined(target[key])) { if (this.isUndefined(target[key])) {
target[key] = obj[key]; target[key] = obj[key];
} }
}.bind(this)); }.bind(this));
}
}, this); }, this);
return target; return target;
@ -80,14 +76,11 @@ const Common = {
} }
} }
} else { } else {
if (this.isUndefined(obj)) return; for (const key in obj) {
const keys = Object.keys(obj);
keys.forEach(function(key) {
if (itr.call(scope, obj[key], key) === this.BREAK) { if (itr.call(scope, obj[key], key) === this.BREAK) {
return; return;
} }
}.bind(this)); }
} }
}, },