将 null 替换为 JSON 中的引号
Replace null with quotes in JSON
这个主题在这个网站上针对PHP和Rails进行了讨论,但我没有看到标准JavaScript的任何内容。
如果我的 JSON 对象在一对中有一个空值,它看起来像这个 id:null,但我需要它看起来像这个 id:"
由于 JSON 不支持单引号,我不确定该怎么做。
当前结果
{"id":"e6168d55-1974-e411-80e0-005056971214","label":"List","parentId":null}
期望的结果
{"id":"e6168d55-1974-e411-80e0-005056971214","label":"List","parentId":""}
JSON.stringify
接受替换器回调,允许您用其他值替换值。替换器回调针对输入中处理的每个键值对运行,并将提供的值替换为返回值。
只需让您的替换器回调查找任何null
值并将其替换为空字符串:
var myObj = {
"id":"e6168d55-1974-e411-80e0-005056971214",
"label":"List",
"parentId":null
};
JSON.stringify(myObj, function(key, value) {
// if value is null, return "" as a replacement
if(value === null) {
return "";
}
// otherwise, leave the value unchanged
return value;
});
如果您没有对象,但只有 JSON 作为输入,则可以使用 var myObj = JSON.parse(jsonInput);
构建对象
不知道你为什么要提到单引号,但在 json 中它永远不会看起来像这样:
id:null
也许你的意思是这个?
{
"id": null
}
无论如何,如果要对空字符串进行编码""
而不是null
,请提供一个空字符串,因为""
只是对空字符串进行编码的方式。因此,请检查您的null
并用空字符串替换它们。
我不相信有一种快速简便的方法可以将 NULL 映射到 "。 如果您没有使用非常深的 JSON 结构,则可以遍历该结构并将其从 NULL 更改为 "。
这解决了我的问题
myJSON = myJSON.replace(/null/i, "'"'"");
试试这个。
var response = yourResponseText.replace(/null/g, '')
var json = JSON.parse(response);
将回复文本中的null
替换为 ''
。替换后,将字符串解析response
JSON
。
试试这个
const obj = {
"id": "e6168d55-1974-e411-80e0-005056971214",
"label": "List",
"parentId": null
}
const jsonObj = JSON.stringify(obj,
(key, value) => (value === null) ? '' : value
);
console.log(jsonObj);
// return -> {"id":"e6168d55-1974-e411-80e0-005056971214","label":"List","parentId":""}
{"id":"e6168d55-1974-e411-80e0-005056971214","label":"List","parentId": "parentId" ? "parentId" : ''}
相关文章:
- AJAX请求中的JSON对象为Null或空
- 从aspx.cs页面获取jquery post中的Null响应而不是json
- D3 Json请求获取XmlHttpRequest错误:访问控制允许原点不允许原点为null
- 为什么change函数内部的全局json对象为null
- Html.DropDownList在JSON中使用.val()作为null传递
- 其中一个json.dumps值为null
- 如何删除“;NULL”;使用Javascript从sails.js中的JSON对象中提取字符串
- Node json-schema prevent null for interger
- 成功填充 xmlhttprequest 的 Json 对象突然变为“null”
- 当 JSON.stringify 时,ASP.NET MVC 控制器参数的 JSON 为 null
- 尝试将使用 SQL 语句生成的 JSON 数据从 PHP 脚本返回到 JS 网页,但改为 null
- JSON 电子表格返回 null,或者我是个白痴
- 序列化的 JSON 对象在控制器处显示为 Null
- 某些 JSON 字段在命中 MVC 控制器方法时显示为 NULL
- 将 null 替换为 JSON 中的引号
- 从JSON数组中删除行将留下'null'
- 当我用JQueryAJAX传递JSON数组时,我会得到null
- 向WCF Rest Service发送JSON-对象文件为null
- 计算机上的JSON文件Access Control Allow Origin不允许Origin为null
- Backbone Post JSON Null?