HarmonyOS 关于Map语法问题
const params:Map<string,CommonType> = new Map(); 
    params["lnt"] = "118.177704"; 
    params["devImei"] = "xxxx"; 
    params["deviceToken"] = "xxxxx"; 
    params["lat"] = "24.485945"; 
    params["region"] = "福建省-厦门市"; 
    params["pwd"] = "51459c23ca91ebce271449dd8b5c26751c99039c2ae4c628067898ca0e104039"; 
    params["devMol"] = "iPhone 6s Plus"; 
    params["acct"] = "xxxx"; 
   console.log("params______",JSON.stringify(params)); 
 
    const sendParams:Map<string,CommonType> = new Map(); 
    sendParams.set("lnt","118.177704"); 
    sendParams.set("devImei","xxxx"); 
    sendParams.set("deviceToken","xxxx"); 
    sendParams.set("lat","24.485945"); 
    sendParams.set("region","福建省-厦门市"); 
    sendParams.set("pwd","51459c23ca91ebce271449dd8b5c26751c99039c2ae4c628067898ca0e104039"); 
    sendParams.set("devMol","iPhone 6s Plus"); 
    sendParams.set("acct","xxxx"); 
    console.log("sendParams______",JSON.stringify(sendParams));map的这两种写法有什么区别?第一个打印出来是:
{"lnt":"118.177704","devImei":"xxxxx","deviceToken":"xxxx","lat":"24.485945","region":"福建省-厦门市","pwd":"51459c23ca91ebce271449dd8b5c26751c99039c2ae4c628067898ca0e104039","devMol":"iPhone 6s Plus","acct":"xxxx"},第二个打印出来是:{}。
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 HarmonyOS关于TS转ArkTS的语法问题 
1668浏览  • 1回复 待解决
HarmonyOS 语法问题 
1217浏览  • 1回复 待解决
HarmonyOS 语法问题 
1266浏览  • 1回复 待解决
HarmonyOS 关于Navigation中,route_map.json的配置问题 
3273浏览  • 1回复 待解决
HarmonyOS ArkTS语法问题 
1704浏览  • 1回复 待解决
HarmonyOS 开发语法问题 
1685浏览  • 1回复 待解决
HarmonyOS ArkTS语法的问题 
1460浏览  • 1回复 待解决
HarmonyOS Map Kit问题 
1127浏览  • 1回复 待解决
HarmonyOS Map Kit添加折线问题 
1246浏览  • 1回复 待解决
HarmonyOS Map 序列化问题 
1307浏览  • 1回复 待解决
HarmonyOS  HTTP使用Map传参问题 
1259浏览  • 1回复 待解决
openHarmony 注册服务中的语法问题 
8433浏览  • 1回复 待解决
ArkTS语法咨询的问题有懂得吗? 
3849浏览  • 1回复 待解决
HarmonyOS ArkTS语法 
1256浏览  • 1回复 待解决
HarmonyOS 可空的map?:Map<string, string> JSON解析之后的类型判断问题 
2636浏览  • 1回复 待解决
HarmonyOS 关于cookie问题 
1220浏览  • 1回复 待解决
HarmonyOS 关于加固问题 
1044浏览  • 1回复 待解决
HarmonyOS Map Kit Marker添加AnimationSet执行次数问题 
858浏览  • 1回复 待解决
HarmonyOS  关于手势问题 
1017浏览  • 1回复 待解决
HarmonyOS 关于crash问题 
1824浏览  • 1回复 待解决
HarmonyOS关于navigation问题 
2084浏览  • 1回复 待解决
HarmonyOS map类型提供了collections.Map,那collections.Map能够完全替代map吗? 
1145浏览  • 1回复 待解决
HarmonyOS 关于包体积问题 
1156浏览  • 1回复 待解决
HarmonyOS 关于URL的问题 
1323浏览  • 1回复 待解决
HarmonyOS 关于taskpool的问题 
1257浏览  • 1回复 待解决





















1、当Map<string,CommonType>定义的map使用 params[“lnt”] = “118.177704”; 方式赋值,这种方式本质上更像是 :Record<string,CommonType>,一个标准的JSON对象,而不再是map集合,也不可以转换成HashMap容器类并且使用map容器类的方法。
2、当HashMap<string,CommonType>定义的map(推荐定义为HashMap)使用 sendParams.set(“lnt”,“118.177704”); 方式赋值,这个就是标准的map容器类,也可以使用HashMap集合的迭代器遍历。
3、如1中介绍,该定义方式类似于Record,一个JSON对象的格式,所以可以转换为JSON字符串;2中的方式为map集合无法抓换成JSON字符串。
4、遍历map集合,并且生成一个Record对象。(对应JAVA中JSONObject,可转换成类似于JSON串或者JSON对象的操作)
5、当一个HashMap集合必须使用JSON字符串传递出去时,推荐使用4方法转换成Record对象,然后转换成JSON字符串传递;如果不是必要还是使用HashMap对象在方法内传递保证不会丢失数据。