angularjs – 从数组中删除$$hashKey

前端之家收集整理的这篇文章主要介绍了angularjs – 从数组中删除$$hashKey前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
$scope.appdata = [{name: '',position: '',email: ''}];

这是我在角度控制器中创建的数组。

然后使用push方法将一些值插入到数组中:

$scope.appdata.push({name: 'jenson raby',position: '2',email: 'jensonraby@gmail.com'});

这是插入后的数组值:

$$hashKey:"00F",name:"jenson raby",position:"2",email:"jensonraby@gmail.com",

这里有一个额外的$$ hashKey在插入后被添加到数组中,但是我需要从数组中删除它。

根据您的评论,您需要将数组插入到数据库中,我将假设您正在将其转换为JSON字符串,然后将其保存到数据库。如果这是不正确的,让我知道,我会看看我是否可以修改这个答案。

在将数组转换为JSON时,您有两个修改数组的选项。第一个是angular.toJson,这是一个方便的方法,在序列化数组(或对象)之前,自动删除带有前导$$的任何属性名称。你会这样使用:

var json = angular.toJson( $scope.appdata );

另一个选项,如果您需要更细粒度的控制,您应该使用的是内置JSON.stringify功能的替代参数。替代功能允许您在将其序列化为JSON之前过滤或更改属性。你可以像这样使用它来删除$$ hashKey:

var json = JSON.stringify( $scope.appdata,function( key,value ) {
    if( key === "$$hashKey" ) {
        return undefined;
    }

    return value;
});

猜你在找的Angularjs相关文章