gpt4 book ai didi

javascript - 如何检查javascript数组是否包含具有特定值的属性,如果是则返回true

转载 作者:行者123 更新时间:2023-12-01 01:18:09 25 4
gpt4 key购买 nike

我在 Angular 中有一个 select - 选项,我需要检查与数据库中的 id 具有相同 id 的值,所以我尝试了这样的操作:

isDropdownValueSelected(amf: ApplicationModuleForm): boolean {
for (let i = 0; i < this.role.applicationForms.length; i++) {
if (this.role.applicationForms[i].id == amf.id) {
return true;
}
else {
return false;
}
}
}

我的 Angular 部分:

<div class="col-lg-9">
<select id="applicationModuleFormSelect" name="applicationModuleFormSelect" class="form-control multiselect-select-all" multiple="multiple" data-fouc>
<option *ngFor="let amf of appModuleForms;" [value]="amf.id" [selected]="isDropdownValueSelected(amf)">{{amf.title}}</option>
</select>
</div>

所以基本上我想循环选项中的每个 id,如果我在数组中发现类似的,我会返回 true,因为数组 this.role.applicationForms 保存数据库中的值,但不幸的是这个不起作用,下拉列表中没有选择任何内容,我用控制台日志进行了测试,它说即使有 3 个值,也只有 1 个值存在。

谢谢大家干杯

最佳答案

也许您需要将 false 值移到最后才能返回,因为每个 return 语句都会结束该函数。

isDropdownValueSelected(amf: ApplicationModuleForm): boolean {
for (let i = 0; i < this.role.applicationForms.length; i++) {
if (this.role.applicationForms[i].id == amf.id) {
return true;
}
}
return false;
}

关于javascript - 如何检查javascript数组是否包含具有特定值的属性,如果是则返回true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54532427/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com