我想这个对象保存到$window.localStorage()
:保存对象文本的localStorage在AngularJS
CTRL:
app.controller('ctrl', function($window, $scope) {
$scope.initData = [
{
customer: 1,
firstName: "John",
lastName: "Doe"
},
{
customer: 2,
firstName: "Jane",
lastName: "Doe"
},
{
customerId: 3,
firstName: "John",
lastName: "Smith",
}
];
// scopes
for(var i = 0; i < $scope.initData.length; ++i) {
$window.localStorage.setItem(i, JSON.stringify($scope.initData[i]));
}
});
,但我得到的数值与键作为指标..我也试过这样的:
for(var i = 0; i < $scope.initData.length; ++i) {
$window.localStorage.setItem(i, Object.values($scope.initData[i]));
}
与for..in
,但无法弄清楚什么是最好的方式。
现在,当我做console.log(localStorage);
我有这样的输出:
0:"{"customer":1,"firstName":"John","lastName":"Doe"}"
1:"{"customer":2,"firstName":"Jane","lastName":"Doe"}"
2:"{"customer":3,"firstName":"John","lastName":"Smith"}"
当我访问0
为重点,我得到customer
的价值,我需要得到1
的价值。 customer
应该是关键。
我该如何做到这一点?我该如何转换?
如果您'customer'作为重点,有将是多个具有相同名称的密钥。这是不能做到的。 –
我知道,这就是为什么我转向数组。我现在怎样才能访问'customer'作为关键参考? – tholo