这是我在项目中写的一个Map对象:

let map = new Map();

for (let i = 0; i < type_checked_value.length; i++) {
let type_id = type_checked_value[i]
map.set('type_' + type_id + '_quantity', $("#type_" + type_id + "_quantity").val());
map.set('type_' + type_id + '_score', $("#type_" + type_id + "_score").val());
}

我天真的觉得JS自带的JSON对象就可以像Java的那些JSON转换组件一样调用即可实现转换【大雾】

let jsonMap = JSON.stringify(map);

用这个方法给后端之后就是一个空括号了,在java这里接受就是这个结果:

{}

然后找到了这个办法,可以实现JS的Map对象转换JSON

// JS map对象转换Json方法 https://blog.csdn.net/Jac__Xu/java/article/details/80969219
function mapToJson(m) {
var str = '{';
var i = 1;
m.forEach(function (item, key, mapObj) {
if(mapObj.size == i){
str += '"'+ key+'":"'+ item + '"';
}else{
str += '"'+ key+'":"'+ item + '",';
}
i++;
});
str +='}';
//console.log(str);
return str;
}

传到了后台之后就是这个效果了:

{"type_2_quantity":"2","type_3_score":"5","type_1_score":"4","type_1_quantity":"2","type_3_quantity":"3","type_2_score":"5"}

在Java这里就使用了FastJson来处理转换的:

    @Test
public void parseJavaScriptMapObject(){
String json = "{\"type_2_quantity\":\"2\",\"type_3_score\":\"5\",\"type_1_score\":\"4\",\"type_1_quantity\":\"2\",\"type_3_quantity\":\"3\",\"type_2_score\":\"5\"}";
// JSON.parseObject(json);
Map map = JSON.parseObject(json); System.out.println(map); Object type_2_quantity = map.get("type_2_quantity");
System.out.println(type_2_quantity);
}

测试的结果是能取到值的

{"type_2_quantity":"2","type_3_score":"5","type_1_score":"4","type_1_quantity":"2","type_3_quantity":"3","type_2_score":"5"}
2 Process finished with exit code 0

大概就这样了,没有别的补充

【Project】JS的Map对象前后交互问题的更多相关文章

  1. 在js中将map对象转换成json 和 js对cookie的操作

    在js中将map对象转换成json //msp转objectlet obj= Object.create(null); for (let[k,v] of map) { obj[k] = v; }//o ...

  2. js模拟Map对象,实现key---value

    js模拟Map对象,实现key---value 根据java中map的属性,实现key----value保存 function Map() { var struct = function (key, ...

  3. Js中Map对象的使用

    Js中Map对象的使用 1.定义 键/值对的集合. 2.语法 mapObj = new Map() 3.备注 集合中的键和值可以是任何类型.如果使用现有密钥向集合添加值,则新值会替换旧值. 4.属性 ...

  4. js 操作map对象

    转自:http://smallvq123.javaeye.com/blog/823923 /* * Map对象,实现Map功能 * * * size() 获取Map元素个数 * isEmpty() 判 ...

  5. JS中的Map对象

    1,js创建map对象 var map = new Map(); 2.将键值对放入map对象 map.set("key",value) map.set("key1&quo ...

  6. JavaScript Map对象的实现

    1. [代码]js代码     /* * MAP对象,实现MAP功能 * * 接口: * size()     获取MAP元素个数 * isEmpty()    判断MAP是否为空 * clear() ...

  7. JS中集合对象(Array、Map、Set)及类数组对象的使用与对比

    原文地址 在使用js编程的时候,常常会用到集合对象,集合对象其实是一种泛型,在js中没有明确的规定其内元素的类型,但在强类型语言譬如Java中泛型强制要求指定类型. ES6引入了iterable类型, ...

  8. 转:el表达式获取map对象的内容 & js中使用el表达式 & js 中使用jstl 实现 session.removeattribute

    原文链接: ①EL表达式取Map,List值的总结 ②在jsp中使用el表达式通过键获得后台的一个map<Long,String>的值 ③在javascript中使用el表达式(有图有真相 ...

  9. js es6 map 与 原生对象区别

    区别 object和Map存储的都是键值对组合.但是: object的键的类型是 字符串: map的键的类型是 可以是任意类型: 另外注意,object获取键值使用Object.keys(返回数组): ...

  10. JS Map对象

    java和C#等高级语言中都有map这样的键值对,但是js里没有,我们需要这样的,该怎么做呢? 可以自己使用function封装一个map对象,如下所示 function Map() { this.k ...

随机推荐

  1. 【技巧】JS代码这么写,前端小姐姐都会爱上你

    前言 缘由 JS代码小技巧,教你如何守株待妹 你想听的故事: 顶着『前端小王子』的称号,却无法施展自己的才能. 想当年本狗赤手空拳打入前端阵地,就是想通过技术的制高点来带动前端妹子.奈何时不待我,前端 ...

  2. C++常用模板

    常用模板: 数学: 1. 组合数 组合数 #include<bits/stdc++.h> using namespace std; #define ll long long const l ...

  3. HTML 使用动态脚本

    这个 HTML 图片框架 这个HTML支持的脚本属于动态的插件形式的程序 用分段数方式实现动画 1定时器 2函数 计算机有四则运算加减乘除 还有一个是 ^ (shift + 6这个符号是余数,8^3是 ...

  4. 支付宝支付jemter 插件,导入到高版本jmeter 中使用

    官方支付宝压力测试文档中: 蚂蚁金服开放平台 - 文档中心 (alipay.com) 有个 temp.jmx 文件(http://p.tb.cn/rmsportal_10157_temp.jmx.zi ...

  5. uniapp 开发微信小程序 使用微信小程序一键登录

    研究了一天的uniapp开发微信小程序的第一步,登录! 刚开始使用uni.getUserInfo函数No!不行,无法运行,研究文档发现是这个函数被微信小程序团队给禁用了,OK换! 后来换成了uni.g ...

  6. Wireshark找不到接口

    在管理员权限下的命令行窗口输入net start npf即可. 注意是管理员权限下的,否则会拒绝访问.

  7. PHP接入苹果支付

    Ios苹果支付流程: 客户端先从苹果获取内购Id. 客户端将内购id,金额.用户id等传给服务端获取一个自己服务端生成的订单号. 客户端向苹果发起支付. 支付成功后,客户端从本地拿支付凭证.将支付凭证 ...

  8. SD中的VAE,你不能不懂

    什么是VAE? VAE,即变分自编码器(Variational Autoencoder),是一种生成模型,它通过学习输入数据的潜在表示来重构输入数据. 在Stable Diffusion 1.4 或 ...

  9. Vue手稿4

  10. 深度学习pytorch常用操作以及流程

    在微信公众号上看到这篇文章,担心以后想找的时候迷路,所以记录到了自己的博客上,侵扰致歉,随时联系可删除. 1.基本张量操作 1. 1 创建张量 介绍: torch.tensor() 是 PyTorch ...