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的语法问题
304浏览 • 1回复 待解决
HarmonyOS 关于Navigation中,route_map.json的配置问题
433浏览 • 1回复 待解决
HarmonyOS 开发语法问题
330浏览 • 1回复 待解决
openHarmony 注册服务中的语法问题
7049浏览 • 1回复 待解决
HarmonyOS 可空的map?:Map<string, string> JSON解析之后的类型判断问题
577浏览 • 1回复 待解决
HarmonyOS关于navigation问题
391浏览 • 1回复 待解决
HarmonyOS 关于crash问题
138浏览 • 1回复 待解决
ArkTS语法咨询的问题有懂得吗?
2560浏览 • 1回复 待解决
HarmonyOS 关于taskpool的问题
128浏览 • 1回复 待解决
HarmonyOS 关于ColorFilter的问题
273浏览 • 1回复 待解决
HarmonyOS map类型提供了collections.Map,那collections.Map能够完全替代map吗?
264浏览 • 1回复 待解决
HarmonyOS 使用Proxy语法报错
392浏览 • 1回复 待解决
HarmonyOS 关于Navigation组件的问题
333浏览 • 1回复 待解决
HarmonyOS 关于onKeyEvent不生效问题
208浏览 • 1回复 待解决
HarmonyOS 关于Web调试的问题?
119浏览 • 1回复 待解决
HarmonyOS 关于@Watch监听状态问题
336浏览 • 1回复 待解决
HarmonyOS 关于C API的问题
101浏览 • 1回复 待解决
HarmonyOS关于混淆强度相关问题
390浏览 • 1回复 待解决
HarmonyOS 关于import包引入问题
265浏览 • 1回复 待解决
HarmonyOS关于多线程的问题
351浏览 • 1回复 待解决
HarmonyOS 关于使用@BuilderParam的问题
232浏览 • 1回复 待解决
HarmonyOS 关于Iconfont如何使用问题?
184浏览 • 1回复 待解决
HarmonyOS关于API使用的问题
306浏览 • 1回复 待解决
关于DevEco Studio harmonyos SDK问题
14804浏览 • 5回复 待解决
HarmonyOS map无法展示
98浏览 • 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对象在方法内传递保证不会丢失数据。