我在代码中显示了一些硬编码的值,而我调用剩余值的方法将其设置为0以后。
在这种情况下,如何将硬编码的ValueList
设置为1-3,但是GET调用的值为4。
$scope.valueList = [{
'id': 1, 'name': 'Example 1'
}, {
'id': 2, 'name': 'Example 2'
}, {
'id': 3, 'name': 'Example 3'
}];
SpringDataRestService.get(
{"collection": "users"},
function (response) {
var user= response._embedded.users;
for (var i = 0, len = user.length; i < len; i++) {
var newUser = {id: user[i].id, name: userGroupType[i].name};
$scope.valueList .push(newUser );
}
},
function (response) { // Failure Function
$scope.alerts.push(new DentAlert(AlertType.ERROR, generateAlertMessage(response)));
}
);
答案 0 :(得分:0)
如果要在底部保留新的数组值,请使用数组对象的 push 方法,如果要在顶部保留新插入的数组的值,请使用 unshift 方法例如
的数组var array= ["foo", "bar"];
array.unshift("baz");
console.log(array);
结果:[“ baz”,“ foo”,“ bar”]
var array= ["foo", "bar"];
array.push("baz");
console.log(array);
结果:[“ foo”,“ bar”,“ baz”]
答案 1 :(得分:0)
非常基本的例子。
您需要遍历用户,并将user.id设置为valueList长度,然后将用户推送到ValueList。
const valueList = [{id: 0}, {id: 1}, {id: 2}];
function addValuesToExistingArray(hardCodedValues, newValues) {
newValues.forEach(function(value, index) {
value.id = hardCodedValues.length;
hardCodedValues.push(value);
});
return hardCodedValues;
}
const result = addValuesToExistingArray(valueList, [{id: 0}, {id: 1}, {id: 2}, {id: 3}])
谨记的事情。我建议您从ID:0开始硬编码valueList
。
数组请勿从1开始。
答案 2 :(得分:0)
不确定我是否正确理解了这个问题,但是如果您希望newUser以4开头,那么您应该尝试一下
var newUser = {id: user[i].id + valueList.length+1, name: userGroupType[i].name};
但是我建议以硬编码从id值开始为0并使用如下所示的newUser:
var newUser = {id: user[i].id + valueList.length, name: userGroupType[i].name};