This is super frustrating to me so I hope someone can help. The below is a small example to illustrate my problem.
var group = {
    names: []
}
var groupList = {
    group: [],
    activity:[]
}
$(document).ready(function(){
    $("#play").click(function(){
        var soccer = group;
        var person = "Jack";
        soccer.names.push(person);
        var person = "Amber";
        soccer.names.push(person)
        groupList.group.push(soccer); //group[0]
        // how do I make a constructor for a new group?
        var soccer1 = group;
        var person = "Jill";
        soccer1.names.push(person)
        groupList.group.push(soccer1); //group[1]
        // expect group 0 to be [Jack,Amber] (but pushing Jill on group1 updates group0)
        $("#beta").append("Soccer Group: "+groupList.group[0].names +"<br/>");
         // expect group 1 to be either [Jack,Amber,Jill] or [Jill]
        $("#beta").append("Soccer Group: "+groupList.group[1].names +"<br/>");
    });
});
I need to create a new instance of group without changing the original group.
 
     
     
    