如何为JSON对象属性添加引号,例如此
{name:"User 01"}
所以事后应该看起来像
{"name":"User 01"}
(两者都是字符串)
答案 0 :(得分:3)
第一个符号
var string = {name:"user 01"}
如果您使用它,那么您可以直接访问字符串对象的所有属性和方法
但是如果你使用这种表示法:
var string = {"name":"user 01"}
然后你必须使用:
window.JSON.parse("'"+string+"'")
<强>更新强> 现在我们有ES6,您可以使用template literals:
window.JSON.parse(`'${string}'`)
以便访问字符串对象的所有方法和属性
从php脚本获取数据时通常使用最后一种表示法 或类似的东西
答案 1 :(得分:2)
假设第一个示例是Javascript对象,您可以使用JSON.stringify将其转换为JSON字符串:
JSON.stringify({name:"User 01"});
输出:"{"name":"User 01"}"
如果第一个示例是字符串,我认为您必须使用split
等方法解析它。
答案 2 :(得分:1)
使用此:
function JSONify(obj){
var o = {};
for(var i in obj){
o['"'+i+'"'] = obj[i]; // make the quotes
}
return o;
}
console.log(JSONify({name:'User 01'}));
答案 3 :(得分:0)
JSON.stringify(eval('{name:"User 01"}'));
不是很好,但有效。