Tag: 函数

使用传递给express服务器的参数执行一个函数?

我想使用传递给快速调用的参数来调用一个函数。 下面是一个绑定在app.get()内调用一个简单的console.log的例子: // server.js const express = require('express') const app = express() const port = process.env.PORT || 3001 function processRequest(api_key, another_value) { console.log(api_key, another_value) } app.get('/api', function(req, res) { let api_key = req.query.api_key let another_value = req.query.another_value processRequest(api_key, another_value) res.json({api_key, another_value}) }) app.listen(port) console.log("Started server") 和一个简单的testing const axios = require('axios') function test() { axios.get('localhost:3001/api?api_key=testkey&another_value=anothervalue', res […]

node.js是服务器响应中asynchronous函数调用的结果

对不起,这个肯定已经回答了。 我特别在这里知道这个线程: 如何返回来自asynchronous调用的响应? 但说实话,我还是输了。 我只是不明白如何asynchronous调用一个函数,并且包含这个函数返回给客户端的响应。 我有一个相当简单的路由(在routes.js中),它将向网页提供内容。 该网站的特定元素是rfid标签列表。 这个列表是从一个函数中填充的,当然,我希望并且必须调用asynchron。 我使用帕格(以前称为玉)作为模板渲染引擎和我的tags.pug看起来像这样: extends index.pug block content h2!= subheadline p!= messagetext p!= bodyContent 看到最后的p!= bodyContent? 这个元素应该是标签列表。 以下是我的routes.js中带有app.get('/ tags')的代码片段,在该代码片段中将返回该站点: // get the listing of all stored rfid tags app.get("/tags", function(req, res) { res.render('tags', { title: 'RFID Tag Startseite', headline: 'RFID Tag Startseite', subheadline: 'Verfügbare Tags', messagetext: 'Bitte ein RFID Tag […]

有没有更好的依赖函数调用方法堆叠它们?

我使用Express路由器代码,使用Jade进行渲染,并从MongoDB中获取数据。 是否有更好的方法把所需的所有数据与下面的结构相提并论? 请注意,餐馆,客户和司机之间没有依赖关系,要求首先返回 – 我只需要在页面呈现之前执行全部三个操作。 在某些情况下,这些级联调用中的一些变得越来越深。 必须有一个更好的构造,对吗? router.get('/iframe_map/:restaurantid/:customerid', function(req, res, next) { Restaurant.findOne({'_id': req.params.restaurantid}, '-_id address name phone status lat lng LatLng marker', function(restaurantErr, restaurantDoc) { Customer.findOne({'_id': req.params.customerid}, '-_id address name phone status lat lng LatLng marker', function(customerErr, customerDoc) { Driver.find({}, '-_id letterOrdinal address firstName lastName phone status lat lng LatLng marker', {sort: {letterOrdinal: 1}}, […]

范围问题在node.js的循环中调用一个callback函数

在这个线程glproo的帮助下,我构build了这个代码: for(var i=0;i<datos.length;i++){ bittrex.getticker(datos[i].Currency, function(err, data){ if (err){ console.log('ERROR:', err); return 'ERROR:'+ err; } else { if (data.message!='INVALID_MARKET') { this.LasValueBTC=data.result.Last; } else { this.LasValueBTC=''; } } }.bind(datos[i])); } 问题是,外部callback函数datos数组没有更新…因为它是写在这一刻,如果我console.log(这个)里面的function伟大的工作和this.LastValueBTC存在于我的JSON,但function之外如果我console.log(datos)循环后,LastValueBTC不存在..我需要做一个res.send(datos)后循环..

JavaScript的术语:我(调用/调用/执行)的function?

与function有关的动词有没有区别? 起初,我认为他们的意思是相同的,人们可以互换使用。 现在,我不是100%肯定的。 我觉得在尝试理解与代码相关的内容时,有可能会丢失重要的信息。 我还记下了很多笔记,而且我一直没有考虑如何使用这些术语。 如果我回答一个关于三者之间差异的百万美元的问题,我会说: 'function was invoked ' – function已被触发,但不一定返回结果 'function已执行 ' – function已触发并返回结果 '函数被调用 ' – 函数已经在函数内被触发(因此我们使用术语“callback”) 以上只是我的直觉。 如果有人要求我逐行解释我的一些代码,我不知道用哪个动词来形容它。 我可能会随机在三者之间感到聪明。 我试图研究这个术语,但找不到任何相关的信息。 非常感谢。

每个function应该是封闭?

由于闭包和稍后使用闭包variables调用函数的能力似乎是JavaScript的一大优势,我发现自己经常使用下面的构造: var func; func = function (args) {return function (moreArgs) { Do something; };}; 这是正常的JavaScript编程,或者有这样的方式实现所有function的问题/陷阱? 我没有看到任何缺点,而且这种模式总是将函数的function与闭包的潜在优点相结合,并能够将其传递并稍后执行。 当需要closures时,可以这样调用两次: func()(parms); …但这是一个罕见的发生。 这似乎在任何情况下都能正常工作。 这是应该在Javascript中设置函数的方式,还是这是过度使用闭包? 这种方法似乎没有任何重大的缺点。

从nodejs中的string调用函数

与nodejs中的window [my_func_name]等效的是什么? 我正在从stdin读取一个string,如果它是一个函数名称,我想执行它。 我认为全球[my_func_name]可能工作,但不幸的是它不。

Dataloader进行caching和批量数据库请求

dataloader如何caching和批量请求并存储在一个密钥中。 https://github.com/facebook/dataloader 在这里,我需要dataloader包和创build一个实例,但它是如何工作的思想……………………………数据库查询请为db查找表提供一个示例 var DataLoader = require('dataloader') var userLoader = new DataLoader(keys => myBatchGetUsers(keys)); userLoader.load(1) .then(user => userLoader.load(user.invitedByID)) .then(invitedBy => console.log(`User 1 was invited by ${invitedBy}`)); // Elsewhere in your application userLoader.load(2) .then(user => userLoader.load(user.lastInvitedID)) .then(lastInvited => console.log(`User 2 last invited ${lastInvited}`));

节点js函数返回而不是string值

我很安静新来的Java脚本和节点js,我想从一个MySQL数据库中获取一个值,返回值是[对象对象]而不是一个string。 我真的没有在网上find任何答案是什么问题。 我希望这里有人可以帮助。 行值是[object Object]。 这是我的function exports.getAllIdInfo= function(dbConnection, tables ,id , callback){ var tableName= tables[i]; var tableVariable = tableName; var myQuery = 'SELECT time, ' + tableVariable + ' FROM ' + tableName + ' WHERE id= ' + id; var query = dbConnection.query(myQuery, function (err, row, result) { console.log(query.sql); if (err) { console.log("getAllGoodIds error"); […]

NodeJS – 如何发送一个variables嵌套callback? (MongoDB查找查询)

我想在另一个结果集中使用find查询的结果集。 我无法用英语很好地解释这种情况。 我会尝试使用一些代码。 People.find( { name: 'John'}, function( error, allJohns ){ for( var i in allJohns ){ var currentJohn = allJohns[i]; Animals.find( { name: allJohns[i].petName }, allJohnsPets ){ var t = 1; for( var j in allJohnsPets ){ console.log( "PET NUMBER ", t, " = " currentJohn.name, currentJohn.surname, allJohnsPets[j].name ); t++; } } } }); […]