用 JSON.stringify 引用值
Quoting values with JSON.stringify
我正在创建一个如下所示的对象:
let outputOut = {
"_id": id[i],
"regNum": code[i],
"sd": sd[i],
"pd": ptOut,
"p": p[i],
...}
//output
fs.writeFile('./output/file.json', JSON.stringify(output, null, 2), 'utf-8');
但是,我需要将此对象中的 "p" 值用引号引起来。照原样,它只是打印出不带引号的值。
我尝试通过以下方式转义引号字符:
"p": "\"" + p[i] + "\"'",
结果像 this,我也试过这样做:
"p": '"' + p[i] + '"',
输出 this.
如何让 p 值用引号引起来,即:“139500000”?
这对我有用。
var value = 1023;
var p = '\"'+ value + '\"';
console.log(p);
你可以查看我创建的fiddle
I need the "p" values in this object to be wrapped in quotation marks.
换句话说,您希望这些值是 strings。 JSON 中的字符串表示为 "..."
。好像 p[i]
是一个数字。您可以通过调用 String(x)
或 x.toString()
:
将值显式转换为字符串
"p": String(p[i]),
字符串值属性将被字符串化为字符串,即带引号。
let outputOut = {
"_id": id[i],
"regNum": code[i],
"sd": sd[i],
"pd": ptOut,
"p": String(p[i]),
^^^^^^^^^^^^
...}
另一个想法是使用replacer
参数来JSON.stringify
:
JSON.stringify(output, function(key, value) {
if (key === 'p') value = String(value);
return value;
});
我正在创建一个如下所示的对象:
let outputOut = {
"_id": id[i],
"regNum": code[i],
"sd": sd[i],
"pd": ptOut,
"p": p[i],
...}
//output
fs.writeFile('./output/file.json', JSON.stringify(output, null, 2), 'utf-8');
但是,我需要将此对象中的 "p" 值用引号引起来。照原样,它只是打印出不带引号的值。
我尝试通过以下方式转义引号字符:
"p": "\"" + p[i] + "\"'",
结果像 this,我也试过这样做:
"p": '"' + p[i] + '"',
输出 this.
如何让 p 值用引号引起来,即:“139500000”?
这对我有用。
var value = 1023;
var p = '\"'+ value + '\"';
console.log(p);
你可以查看我创建的fiddle
I need the "p" values in this object to be wrapped in quotation marks.
换句话说,您希望这些值是 strings。 JSON 中的字符串表示为 "..."
。好像 p[i]
是一个数字。您可以通过调用 String(x)
或 x.toString()
:
"p": String(p[i]),
字符串值属性将被字符串化为字符串,即带引号。
let outputOut = {
"_id": id[i],
"regNum": code[i],
"sd": sd[i],
"pd": ptOut,
"p": String(p[i]),
^^^^^^^^^^^^
...}
另一个想法是使用replacer
参数来JSON.stringify
:
JSON.stringify(output, function(key, value) {
if (key === 'p') value = String(value);
return value;
});