I've been working with Multi-Value fields recently - however I've been working in Java and not SSJS. hopefully I'll have notesIn9 show on this soon... I know you want SSJS but keep in mind that SSJS can use Java objects..
Now... in my Java class I'm doing something like this to LOAD in Multi-values..rgrregreg
categoryAdmins = new Vector<String>((List<String>)lookupDoc.getItemValue("categoryAdmin"));
It looks scary... even to me.. but what I believe this is doing is reading the values from the field and then putting them into a Vector. A Vector is like an Array in Lotusscript. It's not used much in the Java world anymore but that's what the Domino Objects use.
To save the values back to the doc I'm doing this:
lookupDoc.replaceItemValue("categoryAdmins", new Vector<String>((List<String>)categoryAdmins));
So it seems that if you have a Vector you can save that directly to a Document field like you can an array. And unlike a LotusScript List that must be converted back to an array.
In SSJS you should be able to create a vector object and assign values to it. I'm GUESSING something like:
var myVector:java.util.Vector = new java.util.Vector();
Then there should be methods for add.. remove... even contains I THINK.
then when you go to save it... try just saving the vector back to the document:
meDoc.replaceItemValue("myField", myVector);
And see if that works. I don't have first hand experience of this... but I THINK it'll work.
I did a show on using Java Objects for NotesIn9. I didn't use Vector's... I used HashMaps and ArrayLists I believe.. http://notesin9.com/index.php/2011/07/11/notesin9-ee-009-using-java-hashmaps-and-treemaps-with-xpages/
That MIGHT be worth a look simply because of working with the Java object inside SSJS.
Best of Luck!!!
Dave