首页 > 解决方案 > 删除数组中键周围的双引号

问题描述

我的数组周围有带有双引号“”的键,我该如何删除它们?

我正在从这样的输入字段生成我的对象:

var obj = {};
obj.Firstname = document.getElementById("firstName").value;
obj.Lastname = document.getElementById("surname").value;
var jsonStringObj = {
    users: [JSON.stringify(obj)]
};
console.log(jsonStringObj)

结果是这样的:

users: ["{"Firstname":"","Lastname":""}"] <<-- wrong

预期数组:

users: [{Firstname:"john",Lastname:"doe"}] <<-- I want this

我尝试了以下不成功的尝试:

var string = JSON.stringify(array);
string.replace (/"/g,'');

标签: javascriptarraysjson

解决方案


当您编写 JSON.stringify 以将其转换为字符串时,它会将双引号添加到您的键中。

您只需要直接编写obj,它的行为就像普通对象而不是字符串。

因此,请使用以下代码更新您的行代码。它应该可以解决您的问题。

var obj = {};
 obj.Firstname = document.getElementById("firstName").value;
 obj.Lastname = document.getElementById("surname").value;
 var jsonStringObj = {users: [obj]};
 console.log(jsonStringObj)

推荐阅读