Possible Duplicate:
Object comparison in JavaScript
I have two native JavaScript objects:
var foo = { hello: 'world', holy: { shit: 'batman' } };
var bar = { ... };
I would like to compare the two (foo == bar).
This works well, but only in some cases:
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
jQuery has no built-in utility for comparing objects. It's not really clear from your post what information you want to derive from your two objects. Are you trying to sort them?
Depending on what you are trying to do, you may be able to satisfy your use case by using one of jQuery's utility methods, though. See, for example: jQuery.extend
, jQuery.each
, jQuery.map
, and jQuery.merge
. jQuery is primarily concerned with manipulating DOM elements; it doesn't have a built-in feature for list sorting (though you may be able to find a plugin).
Check out the jQuery utilities documentation:
http://api.jquery.com/category/utilities/
Also, check out array.sort()
, which apparently is built into javascript:
http://www.javascriptkit.com/javatutors/arraysort.shtml
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With