这个问题已经在这里有了答案:




已关闭8年。






我有两个 native JavaScript对象:

var foo = { hello: 'world', holy: { shit: 'batman' } };
var bar = { ... };

我想比较两者(foo == bar)。

最佳答案

这很好用,但仅在某些情况下:

var obj1 = {n1: "v1", n2: "v2"},
    obj2 = {n1: "v1", n2: "v2"},
    obj3 = {n2: "v2", n1: "v1"},
    obj4 = {n2: "v2", n1: "v1", f: function(){}};


// this will work correctly:
JSON.stringify(obj1) == JSON.stringify(obj2); //true


// but this fails :(
JSON.stringify(obj2) == JSON.stringify(obj3); //false


// and this :(
JSON.stringify(obj3) == JSON.stringify(obj4); //true

关于javascript - 比较原生javascript对象和jQuery,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3791516/

10-12 06:45