JavaScript中的JSON是否存储在HashMap中?

JavaScript中的JSON是否存储在HashMap中?,javascript,json,hashmap,Javascript,Json,Hashmap,我搜索了JSON和HashMap,关于如何将JSON转换为HashMap有很多问题。因此,它们是不同的,我如何在js中使用hashmap?明确指出JSON只是文本: [JSON]使用人类可读的文本传输数据对象 JSON存储在Javascript的字符串中。Javascript对象。您可以使用将JSON字符串转换为对象。简短的回答是“否”,因为它只是作为JavaScript对象编写和分析的交换格式。如果您想要哈希映射之类的东西,您可能只需要使用一个不太原始的函数,分别定义和删除键或值: var m

我搜索了JSON和HashMap,关于如何将JSON转换为HashMap有很多问题。因此,它们是不同的,我如何在js中使用hashmap?

明确指出JSON只是文本:

[JSON]使用人类可读的文本传输数据对象


JSON存储在Javascript的字符串中。Javascript对象。您可以使用将JSON字符串转换为对象。

简短的回答是“否”,因为它只是作为JavaScript对象编写和分析的交换格式。如果您想要哈希映射之类的东西,您可能只需要使用一个不太原始的函数,分别定义和删除键或值:

var mapObj = {};
mapObj[key] = 'value';
delete mapObj[key];
还有一个对象可能适合这种用途,这在ES6中是新的:

var mapObj = new Map();
mapObj.set('key','value');
mapObj.get('key');
mapObj.delete('key');
通过调用JavaScript对象,然后再次调用它们,可以序列化JavaScript对象:

var stringJSON = JSON.stringify(mapObj); // check your object structure for serializability!
var objsJSON = JSON.parse(stringJSON);
序列化地图有点不同。如果可序列化,您仍可以使用和执行此操作:


JSON是一种基于文本的交换格式。如果您的问题与JavaScript对象有关,请准确说明您的问题。谢谢~!我想我知道答案了。JSON是一个基于文本的对象,与HashMap不同。您应该明确,Map不能用JSON.stringify进行字符串化。@奥斯卡:这就是我所说的“检查可序列化性”的意思。这个问题有点广泛,如果一个简单的{}就足够了,而这个{}已经是a了,那么就根本不需要地图了。关于stackoverflow的第一个问题,并真正得到了帮助@曾彬炜: 欢迎您提供答案,并在堆栈溢出时提交。确保你总是知道该做什么。谢谢~!在提问之前,我会在维基百科上搜索答案。
var strMap = JSON.stringify(Array.from(mapObj.entries()));
var mapObj = new Map(JSON.parse(strMap));