我在一个对象中有一个数组,如下所示。
sourceSystemArray = [{
"attId" : 2257,
"attributeName" : "country",
"attributeValues" : [ "AU", "KG", "IN", "AF" ]
}]
使用输入字段,我为用户提供添加新值的选项。 现在我想最终将使用 ngModel 获得的新输入值添加到 attributeValues 数组中。 因此,假设用户输入一个新的国家/地区,例如新西兰。 所以我想将 NZ 推送到 attributeValues,我的最终对象应该像这样:
sourceSystemArray = [{
"attId" : 2257,
"attributeName" : "country",
"attributeValues" : [ "AU", "KG", "IN", "AF","NZ" ]
}]
我尝试使用推送方法,但它不起作用。 有人可以帮我弄清楚如何实现它吗?
最佳答案
如果您尝试添加此对象,您可能会遇到问题,因为它本身位于数组中。以下是我添加到 attributeValues
的方法。
let myarray = [{
"attId" : 2257,
"attributeName" : "country",
"attributeValues" : [ "AU", "KG", "IN", "AF" ]
}]
myarray[0].attribute values.push('GB')
或者,假设它不是数组中的唯一项目。
let myarray = [{
"attId" : 2257,
"attributeName" : "country",
"attributeValues" : [ "AU", "KG", "IN", "AF" ]
}]
myarray.find(item => item.attId === 2257)
.attributeValues.push('GB')
关于javascript - 如何将值推送到对象内的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60785292/