emit works by just storing the key/value pairs in an array and then when all views in the same _design document have been calculated returns all results at once. As you've noticed this can lead to the pass by reference confusion.
Feel free to add a note to the wiki. Paul Davis On Fri, Apr 3, 2009 at 7:46 AM, Tim Somers <[email protected]> wrote: > Hi guys, > > Okay, I found what's going on. Calling the "emit" function passes the > object's reference, so if I alter the object afterwards, the emited value > gets altered with it. I fixed it by changing > emit([doc.monitorID, doc.LocDateTime], subDateTime); > to > emit([doc.monitorID, doc.LocDateTime], eval(uneval(subDateTime))); > which seems to work. > > This does leave me with a question: is this intended behavior? If so, maybe > it should at least be mentioned in the docs? > > Thanks > Tim >
