Angular Built in helper Functions
angular.equals
The angular.equals function compares and determines if 2 objects or values are equal, angular.equals performs a deep comparison and returns true if and only if at least 1 of the following conditions is met.
angular.equals(value1, value2)
1. If the objects or values pass the === comparison
2. If both objects or values are of the same type, and all of their properties are also equal by using
angular.equals
3. Both values are equal to NaN
4. Both values represent the same regular expression's result.
This function is helpful when you need to deep compare objects or arrays by their values or results rather than just references.
Examples
angular.equals(1, 1) // true
angular.equals(1, 2) // false
angular.equals({}, {}) // true, note that {}==={} is false
angular.equals({a: 1}, {a: 1}) // true
angular.equals({a: 1}, {a: 2}) // false
angular.equals(NaN, NaN) // true