var i={ key1:value1, key2:value2 }
var j={ key2:value2, key1:value1 }
How to compare above objects and get answer true?
var i={ key1:value1, key2:value2 }
var j={ key2:value2, key1:value1 }
How to compare above objects and get answer true?
 
    
    You could sort the object keys and compare
var i = {
  key1: 'value1',
  key2: 'value2'
}
var j = {
  key2: 'value2',
  key1: 'value1'
}
console.log(JSON.stringify(sortedObject(i)) === JSON.stringify(sortedObject(j)))
function sortedObject(unordered) {
  return Object.keys(unordered).sort().reduce(
    (obj, key) => {
      obj[key] = unordered[key];
      return obj;
    }, {});
} 
    
    Compare Keys
var i={ key1:"value1", key2:"value2"}
var j={ key2:"value2", key1:"value1" }
for(k in i) {
  for(p in j) {
     console.log(k == p)
  }
}
Compare Values
var i={ key1:"value1", key2:"value2"}
var j={ key2:"value2", key1:"value1" }
for(k in i) {
  for(p in j) {
     console.log(i[k] == j[p])
  }
}
 
    
    For this purpose, you can use lodash library. You're looking for a method called isEqual.
In the example below, you can see that I passed the objects from your example and this code returns true. You can play around with the code right here (online lodash tester).
var i={ key1: '13', key2: 140 }
var j={ key2: 140, key1: '13' }
_.isEqual(i, j) // returns true
