Deepcopy in React : <p>In reducers,we always use <code>Object.assign({},state,newState)</code> to save a state. But <code>assign()</code> doesn't support deepcopy,because this method only copy a reference of multi-level object. This is my code in program.</p>

<p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div class="snippet-code">
<pre class="snippet-code-js lang-js prettyprint-override"><code>const menuListState={
	menuList: {},
	menuListLoading:false
}
function getMenuList(state=menuListState,action=defaultAction){
	switch(action.type){
		//menuList begin
		case actions.GET_MENULIST_SUCCESS:
		    return Object.assign({},state,{
			    menuList:action.data,
			    menuListLoading:false
		    });

		default:
			return state;
	}
}</code></pre>
</div>
</div>
</p>

<p>The property <code>menuList</code> is a multi-level Object. And when <code>action.data</code> changes, will <code>state.menuList</code> be changed immediately before the method <code>assign()</code> work?</p>
