验证数组中的重复数据项-JavaScript

验证数组中的重复数据项-JavaScript,javascript,vue.js,vuejs2,Javascript,Vue.js,Vuejs2,我的问题是,我想插入在推送时不重复的值 这是我的代码: addAddress: function() { this.insertAddresses.Adress = this.address_address this.insertAddresses.State = this.selectedStateAddress this.insertAddresses.City = this.selectedCityAddress

我的问题是,我想插入在推送时不重复的值

这是我的代码:

addAddress: function() {
            this.insertAddresses.Adress = this.address_address
            this.insertAddresses.State = this.selectedStateAddress
            this.insertAddresses.City = this.selectedCityAddress
            if(this.insertAddresses.Adress !== "" && this.insertAddresses.State !== null && this.insertAddresses.City !== null) {
                let copia = Object.assign({}, this.insertAddresses);
                this.addresses.push(copia)
            }
            else
            {
                this.$message.error('Not enough data to add');
                return
            }
        },
向我的对象添加新元素时,它返回以下内容

当我再次按下add按钮时,它会再次添加相同的值,我希望执行验证,以使数据不相同。如何以正确的方式执行此验证

检查一下:

let filter= this.addresses.find(x=> this.insertAddresses.State==x.State)
if (filter==null) {
   this.$message.error('your message');
}
或过滤所有

let filter= this.addresses.find(x=> this.insertAddresses.Adress==x.Adress && this.insertAddresses.State==x.State && this.insertAddresses.City==x.City)
if (filter==null) {
   this.$message.error('your message');
}
``

插入之前,请验证该项在数组中不存在

您可以使用以下命令搜索阵列:

导出默认值{
方法:{
addAddress(){
常量newItem={
地址:this.Address\u地址,
状态:this.selectedStateAddress,
城市:此。已选择城市地址
}
此.insertItem(newItem)
},
插入项(项目){
const existingItem=this.addresses.find(a=>{
返回
a、 状态===项。状态
&&a.城市===项目。城市
&&a.地址===项目地址
})
如果(!existingItem){
此.addresses.push(项目)
}
}
}
}
另一方面,如果你的应用程序需要更好的性能(例如,有许多地址),你可以保存一个单独的命令来跟踪地址是否已经存在:

导出默认值{
数据(){
返回{
请参阅:{}
}
},
方法:{
插入项(项目){
常量{地址、州、市}=项
const key=JSON.stringify({Address,State,City})
const seen=this.seenadresses[key]
如果(!看到){
this.seenadresses[key]=项
此.addresses.push(项目)
}
}
}
}

我已经设法解决了这个问题:const existingItem=this.addresses.find(a=>a.State===item.State&&a.City==item.City&&a.address==item.address)非常感谢!!!