Skip to content

Instantly share code, notes, and snippets.

@qcom
Last active December 19, 2015 00:29
Show Gist options
  • Save qcom/5869192 to your computer and use it in GitHub Desktop.
Save qcom/5869192 to your computer and use it in GitHub Desktop.
function isObject(o) {
return o instanceof Object && o.constructor === Object;
}
function getNumberLeft (man) {
var sum = 0;
var keys = Object.keys(man.products);
keys.forEach(function(key) {
var keys2 = Object.keys(man.products[key].products);
keys2.forEach(function(key2, i) {
if (isObject(man.products[key].products[key2].products)) {
var keys3 = Object.keys(man.products[key].products[key2].products);
keys3.forEach(function(key3, j) {
if (isObject(man.products[key].products[key2].products[key3].products)) {
var keys4 = Object.keys(man.products[key].products[key2].products[key3].products);
keys4.forEach(function(key4) {
if (isObject(man.products[key].products[key2].products[key3].products[key4].products)) {
var keys5 = Object.keys(man.products[key].products[key2].products[key3].products[key4].products);
keys5.forEach(function(key5) {
if (isObject(man.products[key].products[key2].products[key3].products[key4].products[key5].products)) {
}
else
sum += man.products[key].products[key2].products[key3].products[key4].products[key5].number;
});
}
else
sum += man.products[key].products[key2].products[key3].products[key4].number;
});
}
else
sum += man.products[key].products[key2].products[key3].number;
});
}
else
sum += man.products[key].products[key2].number;
});
});
return sum;
}
module.exports = getNumberLeft;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment