7. A computer program product for undoing and redoing changes in a Javascript object notation structure, the computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising: program instructions to modify a Javascript object notation structure to include a tag on at least one object and a tag on at least one array containing a first version of the Javascript object notation structure, comprising: program instructions to recursively traverse objects and arrays inside a hierarchy of the Javascript object notation structure; and program instructions to add an identifier to each object and array; program instructions to identify a change to the Javascript object notation structure creating a second version of the Javascript object notation structure; program instructions to adjust the tag on the at least one object and the tag on the at least one array to include the second version of the Javascript object notation structure; program instructions to adjust the displayed first version of the Javascript object notation structure with the second version of the Javascript object notation structure; program instructions to receive data indicating an action, wherein an action includes a undo/redo action to the Javascript object notation structure to return the second Javascript object notation structure to the first version of the Javascript object notation structure; and program instructions to adjust the displayed second version of the Javascript object notation structure to the first version of the Javascript object notation structure.
7. A computer program product for undoing and redoing changes in a Javascript object notation structure, the computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising: program instructions to modify a Javascript object notation structure to include a tag on at least one object and a tag on at least one array containing a first version of the Javascript object notation structure, comprising: program instructions to recursively traverse objects and arrays inside a hierarchy of the Javascript object notation structure; and program instructions to add an identifier to each object and array; program instructions to identify a change to the Javascript object notation structure creating a second version of the Javascript object notation structure; program instructions to adjust the tag on the at least one object and the tag on the at least one array to include the second version of the Javascript object notation structure; program instructions to adjust the displayed first version of the Javascript object notation structure with the second version of the Javascript object notation structure; program instructions to receive data indicating an action, wherein an action includes a undo/redo action to the Javascript object notation structure to return the second Javascript object notation structure to the first version of the Javascript object notation structure; and program instructions to adjust the displayed second version of the Javascript object notation structure to the first version of the Javascript object notation structure. 8. The computer program product of claim 7 , further comprising program instructions to: receive data indicating an action, wherein an action includes displaying the second version of the Javascript object notation structure to replace the first version of the Javascript object notation structure.