<!--- Lightning Component ---->
<aura:component>
<aura:attribute name="map" type="Map" default="{str1:null,str2:null,obj:null}"/>
<aura:attribute name="str1" type="String" default="{!v.map.str1}"/>
<aura:attribute name="str2" type="String" default="{!v.map.str2}"/>
<aura:attribute name="obj" type="Contact" default="{!v.map.obj}"/>
</aura:component>
------------Lightning Component Controller--------------------------
fn: function(cmp, event, helper)
{
var map=cmp.get("v.map");//top or START of function
//some logic here
map['str1']='LastName';
//some logic here
map['str2']='Firstname';
//some logic here
var obj={"FirstName":"Ram","LastName":'Lakhan'};
map['obj']=obj;
cmp.set("v.map",map);// END of function
}
<aura:component>
<aura:attribute name="map" type="Map" default="{str1:null,str2:null,obj:null}"/>
<aura:attribute name="str1" type="String" default="{!v.map.str1}"/>
<aura:attribute name="str2" type="String" default="{!v.map.str2}"/>
<aura:attribute name="obj" type="Contact" default="{!v.map.obj}"/>
</aura:component>
------------Lightning Component Controller--------------------------
fn: function(cmp, event, helper)
{
var map=cmp.get("v.map");//top or START of function
//some logic here
map['str1']='LastName';
//some logic here
map['str2']='Firstname';
//some logic here
var obj={"FirstName":"Ram","LastName":'Lakhan'};
map['obj']=obj;
cmp.set("v.map",map);// END of function
}