javascript - 使用本机 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]}` });
但我只是不确定。
我很想了解为什么我在这种特殊情况下变得不确定,也很想听听您说解决上述问题的最佳方法是什么。谢谢!!
解决方案
您不能从 forEach 返回,而是map
返回到返回的成对字符串的数组,然后将其连接到一个字符串:
Object.entries(obj).map(entry => `${entry[0]} ${entry[1]}`).join(" ");
或者我会做
Object.entries(obj).flat().join(" ")
推荐阅读
- python - 是否有更有效的方法来更新字典中每个键中所有子字段的值
- javascript - MongoDB 对象类型未保存
- php - 如何在“foreach”循环PHP中选择特定项目
- groovy - Red Hat Fuse 快速启动所有“待定”
- reactjs - React-final-form - 将状态转换为表单值
- javascript - JavaScript 表单验证“值”未从表单 onsubmit 事件传递
- java - MacOS 上的 NetBeans 12.1 安装错误
- javascript - 我没有从表格行中通过 jquery 中的 id 获取特定值,它显示“未定义”
- jquery - 使用 jQuery 计算活动过滤器并将其插入到属性中
- javascript - vue 3 chart.js 数据从 api 更新但图表未呈现