如何从AngularJS对象中删除键名并保留它';s值多少?
我有一周中几天的复选框。我使用的是ng模型,但是不能对每个模型使用相同的模型,因为它可以防止选中多个框。因此,作为一种解决方法,我对模型使用了以下格式:day.sun、day.mon等 对象结果为:$scope.day={sun:0,mon:1} 我需要删除键名,使对象看起来像:$scope.day={0,1} 有没有办法删除密钥名?我在网上查看过,大多数示例显示同时删除键/值对。Object.values()是我遇到的另一个选项,但我得到一个错误,它没有定义 我需要将该值({0,1})存储到以下对象中:如何从AngularJS对象中删除键名并保留它';s值多少?,angularjs,object,key-value,angularjs-ng-model,Angularjs,Object,Key Value,Angularjs Ng Model,我有一周中几天的复选框。我使用的是ng模型,但是不能对每个模型使用相同的模型,因为它可以防止选中多个框。因此,作为一种解决方法,我对模型使用了以下格式:day.sun、day.mon等 对象结果为:$scope.day={sun:0,mon:1} 我需要删除键名,使对象看起来像:$scope.day={0,1} 有没有办法删除密钥名?我在网上查看过,大多数示例显示同时删除键/值对。Object.values()是我遇到的另一个选项,但我得到一个错误,它没有定义 我需要将该值({0,1})存储到以
$rootScope.schedule = {
"@": {
"let_run": "yes",
"when_holiday": "ignore_holiday",
"begin":"00:00",
"end":"24:00"
},
"weekdays": {
"day": {
"@": {
**"day": $rootScope.day,**
}
}
},
"monthdays": {
"day": {
"@": {
"day": $rootScope.startDate
}
}
}
};
谢谢。您可以使用forEach。顺便说一句,{0,1}不是有效的对象。您需要使用数组
$scope.newObj = [];
$scope.Object={sun:0, mon:1};
angular.forEach($scope.Object,function(val,key){
$scope.newObj.push(val);
})
你可以用forEach。顺便说一句,{0,1}不是有效的对象。您需要使用数组
$scope.newObj = [];
$scope.Object={sun:0, mon:1};
angular.forEach($scope.Object,function(val,key){
$scope.newObj.push(val);
})
为了保证正确的密钥顺序,您应该按顺序使用一组日密钥
var day = {sun: 0, mon: 1, ... },
days = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'],
dayValues = days.map(function(key) {
return day[key] || 0;
});
为了保证正确的密钥顺序,您应该按顺序使用一组日密钥
var day = {sun: 0, mon: 1, ... },
days = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'],
dayValues = days.map(function(key) {
return day[key] || 0;
});
这不是有效的对象,您是指像
[0,1]
这样的数组吗?有关Object.values
polyFillsorry,请参见。我已编辑了问题…对象是$scope.day={sun:0,mon:1}不,您的{0,1}
不是有效对象。这肯定是XY问题。您真正的问题是如何选中多个复选框,但您已经询问了一个涉及删除密钥名的潜在解决方案。不幸的是。潜在的解决方案并非真正有效。你应该考虑重新审视你的真实问题,并展示一些更多的细节来解释为什么你认为你不能检查多个复选框。这不是一个有效的对象,你是指一个数组,比如<代码>(0, 1)< /代码>?有关Object.values
polyFillsorry,请参见。我已编辑了问题…对象是$scope.day={sun:0,mon:1}不,您的{0,1}
不是有效对象。这肯定是XY问题。您真正的问题是如何选中多个复选框,但您已经询问了一个涉及删除密钥名的潜在解决方案。不幸的是。潜在的解决方案并非真正有效。你应该考虑重新审视你的真实问题,并展示一些更多的细节来解释为什么你认为你不能检查多个复选框。因此,一旦值在数组中-如何将这些数组值推送到$rootScope.schedule-->day:$rootScope.day?请注意,对象键顺序不能保证为hanks。因此,一旦这些值在数组中,如何将这些数组值推送到$rootScope.schedule-->day:$rootScope.day?