您必须清楚“ JSON”的含义。
某些人错误地使用术语JSON来指代简单的旧Javascript对象,例如
[{a:1}]。这个恰好是一个数组。如果要向数组添加新元素,只需添加数组
push,如
var arr = [{a: 1}];arr.push({b: 2});< [{a: 1}, {b: 2}]
JSON这个词也可以用来表示以JSON格式编码的字符串:
var json = '[{"a": 1}]';
请注意(单引号)指示这是一个字符串。如果您有从某个地方获得的字符串,则需要使用以下命令首先将其解析为Javascript对象
JSON.parse:
var obj = JSON.parse(json);
现在,您可以按任意方式 *** 作对象,包括
push上面所示的 *** 作。如果然后要将其放回JSON字符串中,则可以使用
JSON.stringify:
var new_json = JSON.stringify(obj.push({b: 2}));'[{"a": 1}, {"b": 1}]'
JSON还用作格式化数据的通用方法,以便与服务器之间进行数据传输,并可以在其中保存(持久化)数据。这就是ajax的用处。Ajax既用于从服务器获取通常为JSON格式的数据,和/或用于将JSON格式的数据发送至服务器。如果收到来自JSON格式的ajax请求的响应,则可能
JSON.parse如上所述需要它。然后,您可以 *** 纵该对象,使用将该对象放回JSON格式
JSON.stringify,并使用另一个ajax调用将数据发送到服务器以进行存储或其他 *** 纵。
您使用术语“ JSON文件”。通常,“文件”一词用于指某个设备上的物理文件( 不是
您在代码中处理的字符串或Javascript对象)。浏览器无法访问您计算机上的物理文件。它无法读取或写入它们。实际上,浏览器甚至没有真正具有“文件”的概念。因此,您不能只在本地计算机上读取或写入一些JSON文件。如果要向服务器发送和从服务器发送JSON,那么服务器当然可以将JSON存储为文件,但是服务器更有可能根据一些ajax请求并根据从数据库检索到的数据来构造JSON。
,或在一些ajax请求中解码JSON,然后将相关数据存储回其数据库中。
您是否真的有“
JSON文件”,如果存在,它在哪里存在以及从何处获得?您是否有JSON格式的字符串,需要解析,维护和转换回新的JSON格式的字符串?您是否需要从服务器获取JSON并进行修改,然后将其发送回服务器?还是您的“
JSON文件”实际上只是一个Javascript对象,您只需要使用普通的Javascript逻辑进行 *** 作?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)