angular的equals

判断二者值是否相同,angular 提供了一个 api :angular.equals(a, b),接两个参数。

基本数据类型,它直接比较值,这一点我们可以直接用 “==” 来判断。之所以记录它,说明它强大的地方:判断两个对象是否相等。

如果我们用两个对象做 == 判断,只要布置一方赋值给另一方,那么他们的存储地址永远都不会相同,也就是说 “==” 比较的仅仅是值,而 equals 可以比较引用的地址后的值:

$scope.obj1 = {name:'1'};
$scope.obj2 = {name:"1"};
$scope.equalTwoObj = angular.equals($scope.obj1,$scope.obj2);
$scope.ifTwoObjSame = function(obj1,obj2) {
    if(obj1 == obj2){
        return true;
    }else {
        return false;
    }
}
$scope.ifTheSame = $scope.ifTwoObjSame($scope.obj1,$scope.obj2);

equals 比较的值:true,而 “==” 比较后返回的 false。

 

posted @ 2017-04-28 11:50  名字不好起啊  阅读(274)  评论(0编辑  收藏  举报