如何在 API 获取后从字符串化 json 中仅获取键和值?

How to get only key and value from stringifying json after API fetch?

我试图在 EJS 页面上仅显示键和值。

<span><%= JSON.stringify(results.conversion_rates) %></span>

给我留下

{"USD":1,"AED":3.6721,"ARS":81.0455,"AUD":1.3564,"BGN":1.6324}

如何删除括号和引号?

如果有帮助,这是我的 server.js 路线:

app.get('/results', (req, res) => {
  const query = req.query.q;
  axios
    .get(`https://v6.exchangerate-api.com/v6/a66b8aae93f6e7abafe3aab5/latest/${query}`)
    .then(function (response) {
      const currencyPair = `Conversion Rates for ${query}`;
      console.log(response)
      res.render('results', {
        currencyPair,
        results: response.data,
      });
    })
});

也许是?

let val_JSON = { "USD":1,"AED":3.6721,"ARS":81.0455,"AUD":1.3564,"BGN":1.6324 }

const JSON2Str = jso => Object.entries(jso).reduce((s,[k,v],i)=>s + (i?',':'') + ` ${k}:${v}`,'')



console.log( JSON2Str( val_JSON ) )

用法:

<span><%= JSON2Str(results.conversion_rates) %></span>

也许您只需要删除所有引号和单引号?因此,您不需要遍历对象。

let incomeJson = { "USD":1,"AED":3.6721,"ARS":81.0455,"AUD":1.3564,"BGN":1.6324 };

console.log( JSON.stringify(incomeJson).replace(/["']/g, ""));