angular.equals

angular.equals 函式比較並確定 2 個物件或值是否相等,angular.equals 執行深度比較,當且僅當滿足以下條件中的至少一個時才返回 true。

angular.equals(value1, value2)

  1. 如果物件或值通過 === 比較
  2. 如果兩個物件或值都屬於同一型別,並且使用 angular.equals 它們的所有屬性也相同
  3. 這兩個值都等於 NaN
  4. 兩個值都表示相同的正規表示式的結果。

當你需要通過值或結果而不僅僅是引用來深入比較物件或陣列時,此函式很有用。

例子

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