javascript 自定义Map

迁移时间:2017年5月25日08:24:19

Author:Marydon

三、自定义Map数据格式

需特别注意的是:

  js中没有像java中的Map数据格式,js自带的map()方法用于:返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。

map()使用指南:http://www.cnblogs.com/rocky-fang/p/5756733.html

  (一)数据格式介绍

    java中Map数据格式组成:{key=value, key=value,...} 

    格式:键与值之间用"="拼接,键值对之间用","拼接。

  (二)操作Map

    3.2.1 Map赋值  

    实现方式:字符串拼接  

    拼接方式:同上

    举例:

var mapString = "";
var value1 = "张三";
var value2 = "123";
mapString += "userName=" + value1 + ",";
mapString += "password=" + value2;
mapString = "{" + mapString + "}";//最后拼接上"{}"

  (三)格式转换

    3.1 mapString转换成JSON对象

/*** 将map形式的字符串转成JSON对象* @param {string} mapStr*   java-Map格式字符串*/
function mapstringToJSON (mapStr) {// 1.去除字符串中所有的"mapStr = mapStr.replace(/"/g, "");// 2.去除掉"{}"mapStr = mapStr.substring(1, mapStr.length - 1);// 3.将map字符串用逗号拆分成数组var strs = mapStr.split(",");var jsonStr = "";//JSON字符串var keyValue = new Array(2);//声明一个长度为2的数组var key = "";//JSON-键var value = "";//JSON-值// 4.迭代map键值对$(strs).each(function(index, str) {keyValue = str.split("=");//按等号拆分成数组key = '"' + keyValue[0].trim() + '"';value = '"' + keyValue[1].trim() + '"';jsonStr += key + ":" + value + ",";//标准的JSON拼接格式
    });// 5.去除最后一个逗号并拼接"{}"jsonStr = "{" + jsonStr.substring(0, jsonStr.length - 1) + "}";// 6.json字符串转成JSON对象var json = eval('(' + jsonStr + ')');return json;
}

    举例:

/*** 遍历JSON对象*/
var key = "";//
var value = "";//
var keyValue = "";//键值对
for (var item in jsonObj) {key = item;value = jsonObj[item];//这里只能使用"[]"取值,使用"."(jsonObj.item)取不到值keyValue = item + ":" + value;console.log(keyValue);
}  

 

 

转载于:https://www.cnblogs.com/Marydon20170307/p/6901895.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/392658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gif分解合成_如何通过分解和合成使复杂的问题更容易

gif分解合成Discover Functional JavaScript was named one of the best new Functional Programming books by BookAuthority!“发现功能JavaScript”被BookAuthority评为最佳新功能编程书籍之一 ! Our natural way of dealing with complexity is to break it in…

vs2005 新建项目一片空白

最近在研究 workflow fundation ,但是在安装了他的extensions之后,发现VS2005 新建项目一片空白,除开workflow其他的项目模板全部丢失,新建项目对话框中空空如也。查阅资料后发现,可以通过 命令 devenv.exe /InstallVSTemplates 来…

docker导入镜像 liunx_docker扫盲?面试连这都不会就等着挂吧

推荐阅读:java喵:6大面试技能树:JAVA基础JVM算法数据库计算机网络操作系统​zhuanlan.zhihu.com一只Tom猫:都是“Redis惹的祸”,害我差点挂在美团三面,真是“虚惊一场”!​zhuanlan.zhihu.com现…

crontab里shell脚本将top信息写入文件

crontab里shell脚本将top信息写入文件: 注: 1、top -n 1代表执行1次退出(默认top是不退出的),-d 1代表每1秒执行1次 2、crontab里需加/bin/bash # crontab -e */5 * * * * /bin/bash /usr/local/bin/top.sh # vi top.sh #!/bin/ba…

leetcode 1030. 距离顺序排列矩阵单元格(bfs)

给出 R 行 C 列的矩阵&#xff0c;其中的单元格的整数坐标为 (r, c)&#xff0c;满足 0 < r < R 且 0 < c < C。 另外&#xff0c;我们在该矩阵中给出了一个坐标为 (r0, c0) 的单元格。 返回矩阵中的所有单元格的坐标&#xff0c;并按到 (r0, c0) 的距离从最小到…

Linux iptables:规则原理和基础

什么是iptables&#xff1f; iptables是Linux下功能强大的应用层防火墙工具&#xff0c;但了解其规则原理和基础后&#xff0c;配置起来也非常简单。 什么是Netfilter&#xff1f; 说到iptables必然提到Netfilter&#xff0c;iptables是应用层的&#xff0c;其实质是一个定义规…

太阳系八大行星碰撞的视频_火星的身世:从太阳系的起源说起

大约46亿年前盘状的太阳星云从一大片又冷又暗的气体云中诞生太阳自己并没有任何暴露确切年龄的线索&#xff0c;我们之所以能够知道太阳系的“生日”&#xff0c;是因为迄今从陨石中找到的最古老固体物质&#xff0c;年龄约为45.68亿年。一般认为&#xff0c;太阳系的各个地方是…

refract推导_我们如何利用Refract来利用React式编程的力量

refract推导by Joe McGrath通过乔麦克格拉斯 我们如何利用Refract来利用React式编程的力量 (How we harnessed the power of reactive programming with Refract) Have you ever wondered how open-source libraries built by companies come into existence?您是否想过公司建…

sql server:查詢系統表

---查看所有存储过程或视图的位置 select a.name,a.[type],b.[definition] from sys.all_objects a,sys.sql_modules b where a.is_ms_shipped0 and a.object_id b.object_id and a.[type] in (P,V,AF) order by a.[name] ASC GO--1、查看所有存储过程与函数 exec sp_store…

UDP数据包的大小

问题来源于日志信息&#xff0c;在这里总结一下&#xff0c;后续在补充新的内容。在链路层&#xff0c;由以太网的物理特性决定了数据帧的长度为&#xff08;46&#xff0b;18&#xff09;---&#xff08;1500&#xff0b;18&#xff09;&#xff0c;其中的18是链路层的首部和尾…

博科查看光功率_法拉第旋光器:非互易性旋转光的偏振

法拉第旋光器是利用法拉第效应制作的光学器件&#xff0c;当入射光正向(或反向)进入旋光器时&#xff0c;入射光偏振面会发生旋转。法拉第效应1845年&#xff0c;法拉第发现&#xff1a;当一束平面偏振光通过置于磁场中的磁光介质时&#xff0c;平面偏振光的偏振面就会随着平行…

Object.prototype 原型和原型链

Object.prototype 原型和原型链 原型 Javascript中所有的对象都是Object的实例&#xff0c;并继承Object.prototype的属性和方法&#xff0c;有些属性是隐藏的。换句话说&#xff0c;在对象创建时会存在预定义的属性&#xff0c;其中有一个属性就是原型对象。在函数对象中存在原…

leetcode 406. 根据身高重建队列(贪心算法)

假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对 (h, k) 表示&#xff0c;其中 h 是这个人的身高&#xff0c;k 是应该排在这个人前面且身高大于或等于 h 的人数。 例如&#xff1a;[5,2] 表示前面应该有 2 个身高大于等于 5 的人&#xff0c;而 [5,0] 表示前面不应该…

java和vue2.0

java中的el表达式${对象.属性}和vue中的双向数据绑定{{mode.xx}}感觉有点类似转载于:https://www.cnblogs.com/YangBinChina/p/11180460.html

oh-my-zsh官方教程

https://github.com/robbyrussell/oh-my-zsh/wiki

leetcode 134. 加油站

在一条环路上有 N 个加油站&#xff0c;其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车&#xff0c;从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发&#xff0c;开始时油箱为空。 如果你可以绕环路行驶一周&#…

ps怎么对比原图快捷键_PS学习之旅:ps如何制作满天星,让你夜晚的天空图片更美...

ps学习之旅&#xff0c;本文介绍关于如何利用ps软件来制作满天星&#xff0c;让你夜晚的天空图片更美&#xff0c;操作很简单哦。1工具/原料Adobe Photoshop CS6软件图片一张2效果展示原图&#xff1a;效果图&#xff1a;3方法/步骤(1)打开PS&#xff0c;选择你想要加星星的一张…

linux程序莫名异常怎么查

内存异常经常导致程序出现莫名其妙的错误&#xff0c;往往很难查证&#xff0c;本文介绍在linux下的各种常见内存异常的查证工具和方法。1 访问空指针/未初始化指针/重复释放内存对于像访问空指针、未初始化指针&#xff08;非法地址&#xff09;&#xff0c;重复释放内存等内存…

永磁直驱风力发电机结构图_国内首台10MW海上永磁直驱风力发电机研制成功

2019首届新能源产业投融资论坛2019年10月25日周老师&#xff1a;157129595968月21日&#xff0c;具有完全自主知识产权、国内首台10MW海上永磁直驱风力发电机在东方电气集团东方电机有限公司研制成功&#xff0c;以此优异成绩向新中国成立70周年献礼。10MW海上永磁直驱风力发电…

struts2官方 中文教程 系列六:表单验证

先贴个本帖的地址&#xff0c;以免被爬&#xff1a;struts2教程 官方系列六&#xff1a;表单验证 即 http://www.cnblogs.com/linghaoxinpian/p/6906720.html 下载本章节代码 介绍 在本教程中&#xff0c;我们将探索使用Struts2来验证用户在表单上的输入。有两种方法可以来进…