Tag: filter

Elasticsearch node.js geo_distancefilter

我正在使用nodejs应用程序中的elasticsearch模块来按照geo_points查找文档。 根据http://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#api-search ,我试图做到这一点: client.search({ index: 'myindex', type: 'mytype', body: { filtered : { query : { match_all : {} }, filter : { geo_distance : { distance : "200km", coordiates : { lat : 40, lon : -70 } } } } } }).then(function (resp) { var hits = resp.hits.hits; console.log(hits, "items"); }).catch(function (error) { […]

检查两个数组中的JSON属性

介绍: 我正在使用d3.js库来绘制一个力布局图。 为了让图的更新过程看起来很平常,我想检查一个名为nodes的数组,它包含图中的所有当前nodes和新的incoming json object如果它们具有基于每个node具有的name属性的共享元素)。 示例JSON: { "nodes":[ {"name":"Harry Potter", "shortname":"Harry", "id":0}, {"name":"Severus Snape", "shortname":"Severus", "id":1} ], "links":[ {"source":0,"target":1,"relation":"hasTeacher"} ] } 每个name都是唯一的( 是的,我知道你们中的一些人会争论名字不应该是唯一的原因 ),这个object将是一个函数的input参数。 function: 以下function将所有新的节点推到图上。 function pushNewElements(json) { var len = json.nodes.length; var difference = json.nodes.filter(function (el) { return isInGraph(el, len); }); difference.forEach(function (node) { nodes.push(node); }); } filter()函数 这个函数应该像filter一样工作,并获得nodes和json.nodes数组之间的json.nodes 。 经过多次testing,这是我能想到的最好的。 function isInGraph(jnode, […]

Node.js过滤多个项的数组

我有一个文件数组,其中包含一组文本文件,格式如下: [test / fixtureData / fixtureData2 / test3.inc,test / fixtureData / fixtureData3 / test5.inc,test / fixtureData / test1.inc,test / fixtureData / test6.ssi,test / fixtureData / test9.html] 我想过滤这个数组,以便过滤掉'.ssi'和'.html'文件。 和下面的代码: var recursiveReadSync = require('recursive-readdir-sync'), var fs = require('fs'); var foundFiles = []; var files = fs.readdirSync(url); 我通过一个文件recursion,为了不粘贴我的整个代码的简单性,假设文件数组包含上面列出的项目。 我不知道如何过滤这个文件数组,我已经看了几个nodeJS API,并没有发现任何东西

组数组对象

我有一个像这样的对象的数组: [{recordID:'123'},{recordID:'123-opp'},{recordsID:'456'},{recordID:'456-opp'},{recordID:'789'}, {recordID:'980'},…] 所以有一些对象具有相同的recordID只是添加了一个-opp ,有些是单一的,没有-opp我想要做的是将相应的对象组合在一个数组中。 另一个单独在一个arrays中。 例如: [[{recordID:'123'},{recordID:'123-opp'}], [{recordID:'456'},{recordID:'456-opp'}],[{recordID:'789'}],[{recordID:'980'}],…] 提一下:有时候可能会在结尾处有-opp ,有时候-ref 。 我尝试了多种方式,但没有得到正确的结果。 这是我的代码: .then(function(dbResult){ //sort and filter the corresponding records var records = []; var indexToDelete; dbResult.forEach(function(item, index){ var recordPair = dbResult.filter(function(element, i){ if(element.recordId.includes(item.recordId)){ indexToDelete = i; return true; }else{ return false; } }) records.splice(indexToDelete,1); records.push(recordPair); }) console.log(records) return records; }) 也许有人有更好的解决scheme。

NodeJS JSON数组过滤

我已经使用Node从SQL中检索一组结果,它们就像这样返回; [ { "event_id": 111111, "date_time": "2012-11-16T01:59:07.000Z", "agent_addr": "127.0.0.1", "priority": 6, "message": "aaaaaaaaa", "up_time": 9015040, "hostname": "bbbbbbb", "context": "ccccccc" }, { "event_id": 111112, "date_time": "2012-11-16T01:59:07.000Z", "agent_addr": "127.0.0.1", "priority": 6, "message": "aaaaaaaaa", "up_time": 9015040, "hostname": "bbbbbbb", "context": "ddddddd" }, ] 数组中通常有很多条目,我需要有效地过滤数组,以便仅显示具有“ccccccc”上下文的条目。 我已经尝试了一个for循环,但它非常慢。 任何build议?

为什么undefined被添加到我的过滤列表?

我试图写一个节点程序,将读取文件导演,并过滤掉没有一定的文件扩展名。 (这对learnyounode来说是一个挑战)由于某种原因,它增加了“未定义”列表。 谁能告诉我为什么? var fs = require('fs') var path = process.argv[2]; var ext = process.argv[3]; var fileList = fs.readdir(path, function callback(err, list){ if (err){ throw err; } var filteredList = list.filter(function(fileName){ var extRx = new RegExp('\.' + 'md' + '$'); return extRx.test(fileName); }); console.log(filteredList.forEach(function(val){console.log(val)})); }); 输出: ACTUAL EXPECTED "CHANGELOG.md" == "CHANGELOG.md" "LICENCE.md" == "LICENCE.md" "README.md" […]

Express.js – 在URL中过滤一个mongodb标识

这个问题启发了这个职位,但在我的情况下,我需要过滤MongoId。 是否可以轻松地进行筛选,因为我需要在每个path中使用它? app.post('/:mongoId(^[0-9a-fA-F]{24}$)', function(req, res){ // Send query based on mongoId }

如何正确安装dc.js以使用Rails 5?

我正在探索dc.js,这将为我的数据质量分析应用程序提供强大的function。 但是我对如何设置库以使其完全运行变得疯狂: D3安装得益于d3导轨gem 使用npm install dc安装dc.js只需返回dc@2.1.6 ../../../node_modules/dc,但不带任何function。 通过引用dc.js <script src="https://dc-js.github.io/dc.js/js/crossfilter.js" 等 <script src="https://dc-js.github.io/dc.js/js/dc.js"></script> 生成错误,如d3.time是未定义的。 (直stream只依赖于D3 3.x?)。 将http://cdnjs.cloudflare.com/ajax/libs/dc/2.0.0/dc.min.js和http://cdnjs.cloudflare.com/ajax/libs/dc/2.0.0/dc.min .css提供最新的代码? 但是如果我在防火墙后面的场所需要它,会发生什么? 我应该在本地下载并复制所有的图书馆吗? 最后,哪个是干净,精益推荐的实现dc.js的方法? 谢谢。

在客户机上使用dc.js和服务器上的crossfilter

我正在为大数据集创build交互式可视化。 数据集由于其大小而无法在浏览器中加载。 我们在节点服务器上使用交叉filter来加载和过滤数据服务器端。 我想知道如果我能以某种方式耦合服务器端交叉filter与dc.js图表​​。 我现在正在使用d3.js创build图表,但是想要使用dc.js中已有的各种图表。 我们基本上是在服务器端过滤数据,然后在客户端监听图表的变化,并在服务器上执行适当的过滤,并通过AJAX进行通信。 如果有人可以build议一种方法来在dc.js客户端和交叉filter服务器之间合并一个类似的AJAX通信机制,这将是非常有帮助的。

Express.js – 过滤URL中的数字和string

我想知道是否有可能检查一个Express.js URL查询的特定格式(Regexexpression式),在查询本身(无需调用callback)。 具体来说,我想执行一个不同的操作,具体取决于查询URL是string还是数字(如用户标识和用户名): app.get('/:int', function(req, res){ // Get user info based on the user id. } app.get('/:string', function(req, res){ // Get user info based on the user name. } 我可以在app.get的第一个参数中过滤数字,还是不可能,除了在callback中进行testing: /(\d)+/.test(req.params.int) /(\w)+/.test(req.params.string)