Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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
Dojo数据存储查询-使用多个参数进行搜索_Dojo - Fatal编程技术网

Dojo数据存储查询-使用多个参数进行搜索

Dojo数据存储查询-使用多个参数进行搜索,dojo,Dojo,我正在尝试查询dojo数据存储对象。存储区有多个对象,每个对象作为一个名为OBJECTID的键,具有唯一的值。有没有一种方法可以像这样查询商店: dataStoreObjet.query({OBJECTID:6990,OBJECTID:34277,OBJECTID:9501}) 现在它只返回最后一个对象。我肯定我错过了一些简单的东西,但这让我发疯。我不想为每个值运行一个查询,然后在不需要的情况下从所有这些查询中创建一组新的值 谢谢对象{OBJECTID:6990,OBJECTID:34277,O

我正在尝试查询dojo数据存储对象。存储区有多个对象,每个对象作为一个名为OBJECTID的键,具有唯一的值。有没有一种方法可以像这样查询商店:

dataStoreObjet.query({OBJECTID:6990,OBJECTID:34277,OBJECTID:9501})

现在它只返回最后一个对象。我肯定我错过了一些简单的东西,但这让我发疯。我不想为每个值运行一个查询,然后在不需要的情况下从所有这些查询中创建一组新的值

谢谢

对象{OBJECTID:6990,OBJECTID:34277,OBJECTID:9501}将只包含上一个值的一个值

这是因为javascript对象是属性及其值的映射。 {OBJECTID:6990,OBJECTID:34277,OBJECTID:9501}的定义与

var obj = { OBJECTID : 6990 };
obj.OBJECTID = 34277;
obj.OBJECTID = 9501;
从上面可以看到,obj对象包含最后一个值,即9501。实际上,您对dataStoreObjet的查询 是

现在是你问题的解决方案

您需要传递一个函数作为查询参数,该参数将比较作为查询结果一部分的对象的值并返回true或false

dataStoreObjet.query( function(object){
        return (object.OBJECTID == 6990) || (object.OBJECTID == 6990) || (object.OBJECTID == 6990)  ;
}) // Pass a function to do more complex querying
dataStoreObjet.query( function(object){
        return (object.OBJECTID == 6990) || (object.OBJECTID == 6990) || (object.OBJECTID == 6990)  ;
}) // Pass a function to do more complex querying