有没有办法阻止从javascript对象属性名称中删除双引号?

有没有办法阻止从javascript对象属性名称中删除双引号?,javascript,json,Javascript,Json,我正在尝试使用第三方电子邮件服务,我需要向他们发送电子邮件地址,以便访问者访问我们的网站。我正在使用{“$email:email}因为这是他们想要的格式,但是当我控制台.log()对象时,它显示为{$email:email}。它去掉了引号,我需要它们。有没有办法强迫JS包含这些引号?谢谢大家! 编辑:回复关于JSON.stringify-ing对象的评论中的blex,这是我的完整代码: let reqPayload = [ "identify",

我正在尝试使用第三方电子邮件服务,我需要向他们发送电子邮件地址,以便访问者访问我们的网站。我正在使用
{“$email:email}
因为这是他们想要的格式,但是当我控制台.log()对象时,它显示为
{$email:email}
。它去掉了引号,我需要它们。有没有办法强迫JS包含这些引号?谢谢大家!

编辑:回复关于JSON.stringify-ing对象的评论中的blex,这是我的完整代码:

let reqPayload = [
        "identify",
        {
          // prettier-ignore
          "$email": email,
        },
      ];
      console.log(JSON.stringify(reqPayload));
      return await _learnq.push(JSON.stringify(reqPayload));

stringify对我不起作用(:

谢谢你们帮助我更好地理解JSON(:长话短说,我与之合作的第三方告诉我“需要”该对象属性上的双引号,但我发现问题实际上与该对象无关,并且它的格式正确。再次感谢!

控制台表示该对象,键周围没有引号,但是如果将其字符串化为JSON,它们就会出现:
console.log(JSON.stringify(obj));
@blex查看我的编辑(:此代码如果您使用库调用API,它可能(几乎肯定)调用
stringify()
本身,您不应该在推入数组时这样做。这只是控制台显示对象的方式。引号不是值的一部分,只是您编写字符串的方式。