javascript - 如何在没有 JSON.stringify 的情况下使用 JavaScript 将对象转换为字符串?
问题描述
我通常不会这样做,但它是在不使用 JSON.stringify() 的情况下转换对象的练习。要转换的对象如下:
obj = {
num: 0,
string: "string",
func: function () {},
emptyString: '',
null: null,
undefined: undefined
};
它应该产生以下答案:
'{"num":0,"string":"This is a string","emptyString":"","null":null}'
解决方案
当然你总是想使用JSON.Stringify()
,但是为了锻炼:
obj = {
num: 0,
string: "string",
func: function () {},
emptyString: '',
null: null,
undefined: undefined
};
str = Object
.entries(obj)
.reduce((a, e) => {
if (typeof e[1] != "function") {
a += `"${e[0]}" : "${e[1]}", `;
}
return a;
}, "`{")
.slice(1, -2) + "}`";
console.log(str)
推荐阅读
- python - 错误“KafkaClient”对象没有属性“poll”
- jquery - When click dropdown other dropdown should hide
- ruby-on-rails - Rails 设计:在表单上渲染和更新多个模型字段
- c# - 悖论:为什么收益率回报比这里列出的更快
- python-3.x - Plotly 未能返回多个跟踪器的选定数据点的信息
- laravel - 如何在 laravel 中有效地显示大型数据集的报表和表格?
- apache - AWS Kinesis Analytics - Apache 自定义访问日志架构问题
- postgresql - Odoo 12 编码 latin1 无法解决
- eclipse-plugin - 在 Eclipse 插件项目中创建 plugin.xml 和 MANIFEST.MF 有什么意义,因为它们在编辑器中打开时指向相同?
- sql - 多行大小写或解码