首页 > 解决方案 > 使用本机 javascript 将对象转换为字符串

问题描述

我定义了以下对象:

let myObj = {
my: 'name',
is: 'Inigo Montoya',
prepare: 'to die!'
}

使 myObj 等于 {“我的名字是 Inigo Montoya 准备死!”的最佳方法是什么?}?

我知道你可以使用 JSON 进行字符串化,但我想用原生 Javascript 来做。我尝试了以下方法来获取由所有对象属性 + 值组成的字符串:

let combined = Object.entries(obj).forEach(entire => {
  return `${entrie[0]} ${entrie[1]}` });

但我只是不确定。

我很想了解为什么我在这种特殊情况下变得不确定,也很想听听您说解决上述问题的最佳方法是什么。谢谢!!

标签: javascriptarraysobject

解决方案


您不能从 forEach 返回,而是map返回到返回的成对字符串的数组,然后将其连接到一个字符串:

Object.entries(obj).map(entry => `${entry[0]} ${entry[1]}`).join(" ");

或者我会做

Object.entries(obj).flat().join(" ")

推荐阅读