Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // alternative approach for testing if value is an Object
- (function() {
- 'use strict';
- var hash = {
- level1a: 'l1a',
- level1b: 'l1b',
- level1c: {
- level2a: 'l2a',
- level2b: {
- level3a: 'l3a'
- },
- level2c: 'l2c'
- },
- level1d: 'l1d'
- };
- var x = 1,
- flat = {};
- function flatten(nested) {
- for (var key in nested) {
- if ( isObj(nested[key]) ) {
- console.log('nested ', nested[key]);
- flatten(nested[key]);
- } else {
- flat['prop' + x] = nested[key];
- x++;
- }
- }
- return flat;
- }
- function isObj(obj) {
- return obj === Object(obj);
- }
- console.log(flatten(hash));
- }());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement