检查对象数组中的对象中是否存在value
Check if value exists in an object in array of objects
我正在尝试编写以下算法的代码
- 我有一个数组
-
ID
来自url (string) - 如果active_id数组中ID的值不存在
- 运行函数A()
active_id
(array)注意 -函数A()应该只运行一次。
我试着写代码
for (var i = 0; i < activeIds.length; i++) {
if (activeIds[i] != uid) {
A(); //This is running multiple times.
}
我尝试使用while loop
var i = 0;
while (activeIds[i] != uid) {
A(); //This is running multiple times again.
i++;
}
我错过了一些东西。
您可以使用indexOf函数,如果数组中不存在元素,则返回-1;如果元素存在,则从0开始,直到数组(长度-1):
if (activeIds.indexOf(uid) == -1) {
A();
}
function A();
您可以使用indexOf
,像这样:
if( activeIds.indexOf(id) < 0 ) A();
如果您想仅在特定ID (uid
)不存在于您的数组activeIds
中时调用function A()
,您可能需要这样更改您的循环方法:
if (activeIds.filter(function(n){ return n===uid }).length==0){
A();
}
函数a()的定义已经准备好使用了。
边注您与function A(){}
的语法只是定义函数A,但它不会运行它。如果你想定义并运行它一次,你可以这样做:
(function A(){
// logic goes here
})();
您可以使用array.indexof()
函数来查找值。它看起来像这样:
if(activeIds.indexOf(uid) === -1){
A();
}
试试这个,代码。
var i=0;
var isMatchFound = false;
while (activeIds.length >= i) {
if(activeIds[i] ==uid){
isMatchFound = true;
break;
}
i++;
}
if(isMatchFound){
//Call Function A
A();
}
希望对大家有所帮助
相关文章:
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 验证会话中是否存在对象's数组
- 使用js/jQuery检查对象(而不是元素)是否真的存在
- 对象为null或IE9中存在未定义错误
- 如何通过json对象选项卡中的Id来检查对象是否存在
- underline-js:将键对象与数组键对象进行比较,如果存在,则移除现有的添加新的
- 查找数组's按属性不存在于另一个数组中的对象
- javascript检查对象存在
- 用javascript在对象上创建不存在的方法
- 为什么没有从数组中存在的对象中删除属性
- 我的无引用 JavaScript 对象存在在哪里以及存在多长时间
- 没有窗口对象存在 webpack nodejs
- 在从Flash调用javascript对象之前,请确保该对象存在
- JavaScript错误未定义对象,尽管对象存在
- JS Ajax onreadystatechange是没有定义的,虽然对象存在
- 对象存在吗?JavaScript对象
- 对象存在,但在youtube响应中仍未定义
- 仅当对象存在时,才从 javascript 中的 html 表单对象读取
- 全局处理javascript对象存在性检查
- 当只有一个对象存在时,Jquery返回两个对象