Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 查找数组是否包含用户_Javascript_Arrays_Parse Platform_Parse Cloud Code - Fatal编程技术网

Javascript 查找数组是否包含用户

Javascript 查找数组是否包含用户,javascript,arrays,parse-platform,parse-cloud-code,Javascript,Arrays,Parse Platform,Parse Cloud Code,我有一个解析后台作业,其中包含一个简单的查询。每个查询对应一个类。此类有2个数组字段,其中填充了objects.id。在这个查询中,对于每个对象,我需要检查第一个数组的objects.ID是否包含在第二个数组中。 基本上在一个简单的循环中: var j = 0; for (var j = 0; j < firstArray.length; j++) { if(firstArray[j] "isContainedIn" secondArray){

我有一个解析后台作业,其中包含一个简单的查询。每个查询对应一个类。此类有2个数组字段,其中填充了objects.id。在这个查询中,对于每个对象,我需要检查第一个数组的objects.ID是否包含在第二个数组中。 基本上在一个简单的循环中:

    var j = 0;
    for (var j = 0; j < firstArray.length; j++) {
        if(firstArray[j] "isContainedIn" secondArray){
        // my custom code
        }
    }
var j=0;
对于(var j=0;j
我不知道要使用什么函数,如果存在的话..javascript有这样的函数吗?或者我需要做一个嵌套循环来实现我的目标

编辑:我使用indexOf解决了这个问题,但是Shqiptar提出的解决方案不起作用,所以这里是一个实际有效的解决方案:

第一个数组名=usersEligibleToVote 第二个数组名=usersthatdocated

for (var j = 0; j < usersEligibleToVote.length; j++) {
        if(usersThatVoted.indexOf(usersEligibleToVote[j]) === -1){
            console.log("user.id "+usersEligibleToVote[j]+" needs to vote");
        } else {
            console.log("user.id "+usersEligibleToVote[j]+" has voted");
        }
}
for(var j=0;j
var j=0;
对于(var j=0;j
然后检查对象是否相同:

var j = 0;
    for (var j = 0; j < firstArray.length; j++) {
        if(firstArray[j].indexOf(secondArray) != -1) 
        {
        // your custom code here
        }
    }
var j=0;
对于(var j=0;j
我将通过一个简单的jQuery和javascript for循环来处理它,如下所示:

var arr1;
var arr2;
var i;
for(i = 0; i < arr1.length; i++) {
    if ($.inArray(arr1[i], arr2) {
        break; //do things here or what not
        }
}
var-arr1;
var-arr2;
var i;
对于(i=0;i
Nested loop,除非指针指向同一个对象……如果它们是完全相同的对象,则可以使用indexOf,而不是值,而是指向同一个对象的指针。我看到了这个问题,但我的答案是关于云代码的,我不认为其中的每个javascript函数都可用。注意:它必须是同一个对象,而不是ob具有相同值的对象。我认为您需要
secondArray.contains(firstArray[j])
firstArray[j]。indexOf(secondArray)
您想在这里执行`!=-1`。返回值为0(falsy)意味着它在数组中。你的条件都是反向的。
array.prototype.contains
还没有实现。-1对于这一点以及糟糕的索引检查。除了批评我之外,你还想在这段代码中做任何编辑吗?你会因为建议jQuery“为了这么简单的事情”而被否决呵呵。假设现在有人使用它——这是不公平的。没有反对票:(从技术上讲,只有两行:P我使用jQuery inArray要快得多。我在浏览产品列表和促销时使用它进行几个产品比较。是的,唯一的问题是,一些用户可能想捆绑整个jQuery只是为了使用这个帮助器,这很愚蠢,因为它不是该插件的目的。对于javasccript逻辑操作和填充->签出lodash或下划线。
var arr1;
var arr2;
var i;
for(i = 0; i < arr1.length; i++) {
    if ($.inArray(arr1[i], arr2) {
        break; //do things here or what not
        }
}