Javascript Parse在Faker.js中将字符串解析为JSON时在位置0处显示错误

Javascript Parse在Faker.js中将字符串解析为JSON时在位置0处显示错误,javascript,json,node.js,faker,Javascript,Json,Node.js,Faker,我见过这些类型的问题,并尝试过解决方案,但都不起作用 我正在从UI向控制器发送一个数组,在Node.js中有faker.js的参考 控制器中的我的代码: var FirstName = req.body; // req.body has array console.log(FirstName); // **Prints** { FirstName: 'faker.name.firstName()' } const U

我见过这些类型的问题,并尝试过解决方案,但都不起作用

我正在从UI向控制器发送一个数组,在Node.js中有faker.js的参考

控制器中的我的代码:

var FirstName = req.body;                    // req.body has array
console.log(FirstName);                      // **Prints** { FirstName: 'faker.name.firstName()' }
const User = FirstName;                     // Didnt work because faker.name.firstName is as string
const Usercheck = JSON.stringify(GettingData[0]);
var response = Usercheck.replace(/['"]+/g,'')
console.log(response);                      // Here it removed the quotations but took total as string. "{ FirstName: faker.name.firstName()}"
JSON.parse(response);     // Tried to parse string as JSON but this shows the error at position 0
在Faker.js中工作的预期代码是

const User = { FirstName: faker.name.firstName() } // Hard code and run this it is working fine
如何实现这一点。

JSON.stringify add extra“在所有键周围,您不能使用Usercheck删除它们。替换(/[''']+/g''),否则您无法解析它:

var a = JSON.stringify({e:5})
console.log(a) // {"e":5}

JSON.parse(a); // ok
JSON.parse("{e:5}"); // nok

faker.name.firstName
是一个函数,需要evaluated@GrégoryBourgin是的,如果我没有这句话('),它会起作用。数组可能仍然有许多字段,如姓氏等,这里并没有数字,两者都是字符(字符串)。这里所需的格式是{e:sdfsfd},但我得到了类似{e:'sdfsfd'}的结果,我们不关心值,我试图向您解释的是,如果您删除“FirstName”键周围的“founder”,您将无法解析字符串,因为它将不再是有效的JSON。此外,您无法存储faker.name.FirstName()在值中,您存储此调用的结果OK,但我得到的是带引号的值。如何删除值中的引号。不能是字符串,如果要将此字符串解释为函数,必须执行以下操作:var a={FirstName:'faker.name.FirstName()'};var b=函数(a.FirstName)();