function deepReplaceProperty(item, property, newProperty) {
	if (item instanceof Array) {
		for (var childItem of item) {
			deepReplaceProperty(childItem, property, newProperty);
		}
	} else if (typeof item === "object") {
		if (item.hasOwnProperty(property)) {
			item[newProperty] = item[property];
			delete item[property];
		}

		Object.keys(item).forEach(function (subItem) {
			deepReplaceProperty(item[subItem], property, newProperty);
		});
	}
}
/**
 * Replace an object property recursively
 * @param item
 * @param property
 * @param newProperty
 */
Replace an object property recursively
@param item
@param property
@param newProperty
Replace an object property recursively @param item @param property @param newProperty
function deepReplaceProperty(item, property, newProperty) {
	if (item instanceof Array) {
		for (var childItem of item) {
			deepReplaceProperty(childItem, property, newProperty);
		}
	} else if (typeof item === "object") {
		if (item.hasOwnProperty(property)) {
			item[newProperty] = item[property];
			delete item[property];
		}
		Object.keys(item).forEach(function (subItem) {
			deepReplaceProperty(item[subItem], property, newProperty);
		});
	}
}
function deepReplaceProperty ( item , property , newProperty ) { if ( item instanceof Array ) { for ( var childItem of item ) { deepReplaceProperty ( childItem , property , newProperty ) ; } } else if ( typeof item === "object" ) { if ( item . hasOwnProperty ( property ) ) { item [ newProperty ] = item [ property ] ; delete item [ property ] ; } Object . keys ( item ) . forEach ( function ( subItem ) { deepReplaceProperty ( item [ subItem ] , property , newProperty ) ; } ) ; } }
Replace an object property recursively
 @param item
 @param property
 @param newProperty
Replace an object property recursively @param item @param property @param newProperty