Articles of string

如何告诉Express不parsing请求的查询string?

我知道Express检查查询string(例如?a = 1&b = 2)并parsing它,如果默认情况下存在。 那req.query是包含键/值对的对象。 有没有办法禁用这种行为,并完全忽略qs? 我需要这个,因为我parsing查询string客户端,因为我收到了大量的请求和QS是相当长的我不想浪费服务器资源每次parsing查询string(这意味着Express将需要解码string中的URI组件,分割string,为每个键值对做一个for循环,为每一对执行另一个分割,创build一个新的对象,这非常昂贵)。 这可能吗?

string匹配的Javascript

我想要@符号后面的字符,直到空格字符。 例如。 如果我的string像hello @world. some gibberish.@stackoverflow hello @world. some gibberish.@stackoverflow 。 然后我想获得angular色的“世界”和“计算器”。 这是我一直在尝试。 var comment = 'hello @world. some gibberish.@stackoverflow'; var indices = []; for (var i = 0; i < comment.length; i++) { if (comment[i] === "@") { indices.push(i); for (var j = 0; j <= i; j++){ startIndex.push(comment[j]); } } } 我可以得到@和空格的出现,然后修剪该部分以获得我的内容,但是我希望有一个更好的解决scheme/build议,没有REGEX。 提前致谢。

从node.js(fs模块)中的文件stream中删除最后一个字符

使用node.js,我试图build立一个对象数组,并将其写入一个文件。 为此,我使用内置的fs库。 在调用var file = fs.createWriteStream('arrayOfObjects.json'); 和file.write('[')我运行了几个asynchronous函数,最终追加这样的对象: file.write(JSON.stringify(objectToAppend) + ',\n') 我可以确定什么时候所有的对象都停止了追加,这是我运行file.write(']')和file.end() 。 我的问题是添加最后一个对象的最后一个逗号导致JSON无效。 由于脚本的asynchronous性质,确定何时何地创build最后一个对象是非常困难的,所以我想知道是否有办法从文件stream中去除或删除字符。 如果是这样,我可以在添加最后的']'字符之前做到这一点。 我可以手动执行此操作,但是我希望将其传送给另一个应用程序。 我想过的唯一的解决scheme是使用fs.truncate()函数,但是这似乎不适用于文件stream, file.length或file.length()将给我的内容的长度,因为它不是一个string,所以很难确定如何或在哪里截断文件。 现在我刚刚在数组的末尾添加了'{}]' ,以使其成为有效的JSON,但这个空对象稍后可能会导致一些问题。 另外请注意:我在这个stream中写入的对象数组非常大,所以我宁愿不要结束stream并重新打开文件 。

将Uint8Array转换为等效于node.js的hexstring

我正在使用node.js v4.5。 假设我有这个Uint8Arrayvariables。 var uint8 = new Uint8Array(4); uint8[0] = 0x1f; uint8[1] = 0x2f; uint8[2] = 0x3f; uint8[3] = 0x4f; 这个数组可以是任意长度,但是假设长度是4。 我想有一个函数,将uint8转换为相当于hexstring。 var hex_string = convertUint8_to_hexStr(uint8); //hex_string becomes "1f2f3f4f"

nodejs:string操作

我有以下的node.js代码: conn.on("data",function(x){ var responseData=x; //sys.puts(responseData); sys.puts(responseData.length); var f=50; var N=responseData.length; if(N>f){ var p=Math.floor(N/f); var p_rem=N%f; var hash=""; for(var i=0;i<p;i++){ hash=DJBHash(responseData.substr(f*i,f)); //this line causes program to exit! sys.puts(responseData.substr(f*i,f)+"***"+hash); } } soc.write(x); }); 但substr似乎不工作! 如何获得node.js中的string的子string? 提前谢谢了,

在Javascript中使用随机数字和运算符生成一个随机math公式

我想创build一个程序,应该打印出最简单的mathexpressionforms,如(21 + 13)* 56使用随机号码。 1到100 ,程序必须采取一个级别参数, 级别决定生成方程的长度 ,例如: 游戏必须产生具有加法+乘法运算符的方程,如(21 + 13)* 56 (使用方括号) —-level 2 75 – 54 = 21 62 + 15 = 77 88 / 22 = 4 93 + 22 = 115 90 * 11 = 990 –level 3 ( 21 + 13 ) * 56 = 1904 82 – 19 + […]

string.replace不能在node.js express服务器上工作

我需要阅读一个文件,并用该dynamic内容replace该文件中的一些文本。当我尝试string.replace它不工作的数据,我从文件读取。但string它正在working.I使用节点。 js和快递。 fs.readFile('test.html', function read(err, data) { if (err) { console.log(err); } else { var msg = data.toString(); msg.replace("%name%", "myname"); msg.replace(/%email%/gi, 'example@gmail.com'); temp = "Hello %NAME%, would you like some %DRINK%?"; temp = temp.replace(/%NAME%/gi,"Myname"); temp = temp.replace("%DRINK%","tea"); console.log("temp: "+temp); console.log("msg: "+msg); } }); 输出: temp: Hello Myname, would you like some tea? msg: Hello %NAME%, […]

不能在node.js中使用模板string

根据MDN的说法, 模板string 应该在Chrome中运行,并且基于Node.js的扩展V8。 但是当我尝试以下我得到一个语法错误: var name = 'coffee'; console.log(`Hello, ${name}!`); 运行node file.js只会导致SyntaxError: Unexpected token ILLEGAL 有什么标志我需要启用使用此function,或者它只是没有实现节点?

Node.js:使用多个查询参数来表示app.get

我想查询yelp API,并有以下路线: app.get("/yelp/term/:term/location/:location", yelp.listPlaces) 当我向GET请求时 http://localhost:3000/yelp?term=food&location=austin , 我得到错误 Cannot GET /yelp?term=food&amp;location=austin 我究竟做错了什么?

为什么JSON.stringify搞砸了我的date时间对象?

{ id: 1533, story_type_id: 1, content_id: 470, created_at: Sun, 05 Feb 2012 07:02:43 GMT, updated_at: Sun, 05 Feb 2012 07:02:43 GMT, type_name: 'post' } 我有一个像上面的“date时间”字段的JSON对象。 这是完美的。 但是,当我把它串起来(我想把它存储在caching中),我得到这种格式: "created_at":"2012-02-05T07:02:43.000Z" 这会导致问题,因为当我想JSON.parse这个,突然它不再是date时间格式,它与我的其他格式不兼容。 我能做些什么来解决这个问题? 我的应用程序中到处都是“created_at”。 我不想手动更改每一个。