【问题标题】:Is there any performance overhead with sending JSON objects instead of stringified JSON through node js APIs?通过节点 js API 发送 JSON 对象而不是字符串化 JSON 是否有任何性能开销?
【发布时间】:2019-02-10 17:53:48
【问题描述】:

在编写节点 js API 时,我们可以将纯 JSON 对象作为参数(主体参数)发送,我认为格式化必须有一些额外的开销,而不是如果我在发送到 API 时对 JSON 进行字符串化并将解析回原来的JSON,同时处理它。

你们能否建议这种方法是否具有任何性能优势?

【问题讨论】:

  • 如果您使用的是 HTTP(您就是),那么所有请求最终都会变成文本。所以我不这么认为,如果你“发送 JSON”它会被转换成文本
  • “JSON 对象” 是什么意思? JSON 是一种文本格式。
  • 如果您了解 JSON 是什么,问题就没有任何意义
  • @charlietfl 我认为字符串和 Javascript 对象 (JSON) 之间存在细微差别。如果 JSON 与纯文本相同,那么 JSON.stringify() JSON.stringify 的目的是什么。
  • 一个javascript对象是不是 JSON。 JSON 始终是字符串。不要混淆两者。 JSON 的名称来源于它们具有相同的结构和语法,但它们不是相同的东西

标签: javascript node.js json backend web-development-server


【解决方案1】:

JSON 是“JavaScript 对象 Notation”——即序列化 Object 的某种字符串格式,以将 Object 保存、传输和恢复到/通过/从字符串。 JSON.stringify() 并不意味着你要字符串化 JSON:这里的 JSON 不是字符串化的对象,而是像 Math.sqrt() 中的命名空间。您不能通过 HTTP 或 IPC 按原样传输 Object:为此,您需要使用文本序列化格式,即 JSON。

【讨论】:

    猜你喜欢
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 2012-11-26
    • 1970-01-01
    • 2017-08-17
    相关资源
    最近更新 更多