Javascript 将单引号转换为双引号
我的目标如下:Javascript 将单引号转换为双引号,javascript,node.js,object,Javascript,Node.js,Object,我的目标如下: { name: "TJ", age: 14, skills: { ruby: 14, html: 50 } } 基本上我想把它转换成这样: { "name": "TJ", "age": 14, "skills": { "ruby": 14, "html": 50 } } { '"name"': '"TJ"', ... } 所以,每件事都应该有双引号 我试着这样做: for ( let i in pers
{
name: "TJ",
age: 14,
skills: {
ruby: 14,
html: 50
}
}
基本上我想把它转换成这样:
{
"name": "TJ",
"age": 14,
"skills": {
"ruby": 14,
"html": 50
}
}
{
'"name"': '"TJ"',
...
}
所以,每件事都应该有双引号
我试着这样做:
for ( let i in person ) {
if ( typeof person[i] !== 'object' ) payload[`"${i}"`] = person[i]
// if object then map inside and to the same
}
但它失败了,因为输出如下:
{
"name": "TJ",
"age": 14,
"skills": {
"ruby": 14,
"html": 50
}
}
{
'"name"': '"TJ"',
...
}
另外,JSON.stringify也不好,因为它添加了“{
有人知道我如何实现上述目标吗?您可以使用JSON.stringify()对吗 如果 您在共享的链接()中看到的内容: {\'bool\':true,\'int\':1} 这就是控制台表示数据的方式。实际对象保持您期望的状态 检查以下链接:
检查您的浏览器控制台。您可以只使用JSON.stringify()对吗 如果 您在共享的链接()中看到的内容: {\'bool\':true,\'int\':1} 这就是控制台表示数据的方式。实际对象保持您期望的状态 检查以下链接:
检查浏览器控制台。刚刚尝试运行代码:
var person={
name: "TJ",
age: 14,
skills: {
ruby: 14,
html: 50
}
};
console.log(JSON.stringify(person));
o/p:
没有添加任何额外的大括号…只是尝试运行代码:
var person={
name: "TJ",
age: 14,
skills: {
ruby: 14,
html: 50
}
};
console.log(JSON.stringify(person));
o/p:
不添加任何额外的大括号…我不明白为什么JSON.stringify是默认情况下会转换为字符串的坏键。你能解释一下你到底想实现什么吗?@DDRamone因为对象看起来像这个@Anderson,所以这正是你需要的,不是吗?如果你不喜欢“\”,这只是一种
jsbin
呈现的方式。在chrome控制台中尝试同样的方法我不明白为什么JSON.stringify是默认情况下将坏键转换为字符串的。你能解释一下你到底想实现什么吗?@DDRamone因为对象看起来像@Anderson,所以这正是你需要的,不是吗?如果你不喜欢“\”,这只是jsbin
呈现的一种方式。请在chrome中尝试同样的方法console@Anderson请检查我发送给你的链接后的edit@Anderson这就是你需要的,我确定。再检查一遍it@Anderson请检查我发送给你的链接后的edit@Anderson这就是你需要的,我确定。再检查一遍