在具有相同上下文的2个对象上调用JSON.stringify(obj)是否总是获得相同的字符串?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在具有相同上下文的2个对象上调用JSON.stringify(obj)是否总是获得相同的字符串?相关的知识,希望对你有一定的参考价值。

例如,我不关心obj的实际顺序,我只想知道具有相同上下文的对象是否与stringify具有相同的字符串结果。我的问题是,假设有2个不同的对象但具有相同的键和值:

function check(v1, v2) {
  return JSON.stringify({
    a: v1,
    b: v2
  }) == JSON.stringify({
    a: 1,
    b: 2
  });
}

console.log(check(1, 2));

check(1,2)总是返回true吗?

答案

由于您对位置和值进行了硬编码,因此这是可靠的。是的,无论如何,check(1,2)总是返回true

只是添加另一个注释。如果你想检查多个键,这将无法正常工作。但在你的情况下,这不适用。所以你可以继续。 :)

以上是关于在具有相同上下文的2个对象上调用JSON.stringify(obj)是否总是获得相同的字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何将具有 70 个字段的 java 对象发送到具有相同字段数的对象的 pl sql 过程

如何分别渲染用户控件

从具有相同 ViewController 类的相同情节提要中调用第二个视图

无法使用杰克逊反序列化包含 2 个具有相同 ID 的对象的 Json

为什么在WSO2 ESB中我不能创建具有相同上下文值的两个不同的API?

Unity3d学习 预设体(prefab)的一些理解