It looks like jsontemp is a global variable here, due to the lack of a 'var', 'let' or similar.
fwiw adding 'use strict'; at the top of your file should make this complain rather than silently doing what you don't want. --Josh On Wed, Aug 3, 2016 at 3:12 PM, Tippur <ctip...@gmail.com> wrote: > I have a json object that has an array field > > I want to take that object and break it into individual json objects. > > For example { a:[ 'x', 'y'], rest: 'fdsf', ff: 'll' } should be broken into > > { a: 'x', rest: 'fdsf', ff: 'll' } and { a: 'y', rest: 'fdsf', ff: 'll' } > > > Here is my code: > ################################## > > var str='{ \ > > "a": ["x", "y"], \ > > "rest": "fdsf", \ > > "ff": "ll" \ > > }' > > jsonstr=JSON.parse(str); > > var payload=[]; > > if (Array.isArray(jsonstr['a'])){ > > console.log("Is array"); > > var payload=[]; > > jsonstr['a'].forEach(function(item, index) { > > console.log(item); > > jsontemp=jsonstr; > > jsontemp.a=item; > > console.log(jsontemp); > > payload.push(jsontemp); > > }); > > } > > console.log(payload); > > ################################## > > Here is the output > > [ { a: 'y', rest: 'fdsf', ff: 'll' }, > > { a: 'y', rest: 'fdsf', ff: 'll' } ] > > > As you can see, the object appended to the final payload has the same > element (payload.a) > > > What am I doing wrong? > > > - Shekar > > > > > > > -- > Job board: http://jobs.nodejs.org/ > New group rules: > https://gist.github.com/othiym23/9886289#file-moderation-policy-md > Old group rules: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to nodejs+unsubscr...@googlegroups.com. > To post to this group, send email to nodejs@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/nodejs/8275a391-bc72-4bba-a43f-a17be42f0d61%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. To post to this group, send email to nodejs@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/CAHL2Ymq4iOQXLmbrC%2BW22iG7X9nj35WzHvXZXDeaoce2hPKofg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.