JS循环满足条件后如何停止后续代码的执行

我想往数组里push对象,先开始判断对象是否是空,可以用return直接停止,但是到判断数组中是否存在时,js的循环虽然可以停止,但是始终会执行后面的push操作,请问我该如何停止

dataAdd(thingsId){
    const moneyData = this.moneyData
    if(thingsId===''){
        this.$message.error({
            message:'请选择设备'
        })
        return 
    }
    moneyData.every(item=>{
        if(item.thingsId===thingsId){
            this.$message.error({
                message:'已有此设备'
            }) 
            return false
        }
    }) 
    // return false 只能停止循环,始终会执行虽然将数据push进去的操作,我希望像上面if一样,return回去,不执行后面的语句
        moneyData.push(JSON.parse(JSON.stringify(this.moneyForm)))
        },
    var status = true;
    moneyData.every(item=>{
        if(item.thingsId===thingsId){
            this.$message.error({
                message:'已有此设备'
            }) 
                    status = false;
            return false
        }
    }) 
        if(status){
                moneyData.push(JSON.parse(JSON.stringify(this.moneyForm)))
        }

你看可否?

你的判断已有设备跟push方法,并没有直接的联系,是设计逻辑的问题。
判断已有设备,判断的方法返回return false,方法结束,继续执行下面的代码。(不是return,直接结束方法。)
可以将return false 改成 return,如果状态成功与否还有其他作业,可以用另外的变量来接收,通过if判断控制push的执行。