title: Remove JSON.stringify from Reducer
body: <p>I keep my chat messages in a dictionary where the key is the date and the value is a list of messages. Every time I add a message the code below runs.</p>
  <p>Is there any way I can improve the code below so that it no longer uses JSON.parse, JSON.stringify.</p>
  <pre><code>  on(MatchActions.AddMessage, (state: MatchState, payload: { message: Message }) =&gt; {
  
      const messages: MessageDictionary = 
          JSON.parse(JSON.stringify(state.chat.messages));
  
      const keys = Object.keys(messages)
  
      if (keys.length &gt; 0) {
        messages[keys[keys.length - 1]].push(payload.message);
      } else {
        messages[getNowUtc().toString()] = [payload.message];
      }
  
  return {
    ...state,
    chat: {
      ...state.chat,
      messages: messages
    }
  }
   }),
  
  
  
  
  export interface Chat {
    chatId: string;
    name: string;
    messages: MessageDictionary;
  }
  
  export interface MessageDictionary {
    [dateSendUtc: string]:  Message[];
  }
  
  export interface Message {
    chatId: string;
    accountId: string;
    messageId: string;
    messageText: string;
    messageSendUtc: Date;
    fromMe: boolean;
  }
  </code></pre>