Nodejs技巧

如何把 %E4%B8%AD 转成汉字

decodeURIComponent(‘%E4%B8%AD‘)

创建一个自签名的https服务器

https://cnodejs.org/topic/54745ac22804a0997d38b32d

koa教程

http://koa.rednode.cn/

把string转化成一个stream

var s = new stream.Readable();
s._read = function noop() {}; // redundant? see update below
s.push(‘your text here‘);
s.push(null);

把stream转化成一个string,

The key is to use these two Stream events:
Event: ‘data‘
Event: ‘end‘
For stream.on(‘data‘, ...) you should collect your data data into either a Buffer (if it is binary) or into a string.
For on(‘end‘, ...) you should call a callback with you completed buffer, or if you can inline it and use return using a Promises library.

new Function多个参数

http://stackoverflow.com/questions/1606797/use-of-apply-with-new-operator-is-this-possible
var f = new (Function.prototype.bind.apply(Function, [null, ‘a‘, ‘b‘, ‘return a*b‘]));

运行new Cls()时,参数数目是固定的。但是bind方法可以:
var f = Cls.bind(anything, arg1, arg2, ...);
result = new f();
anything是什么没关系,因为new操作重置了f的上下文。只是句法的需要。
现在,对于bind调用,我们要传入可变参数,那就这样:
var f = Cls.bind.apply(Cls, [anything, arg1, arg2, ...]);
result = new f();

Cls.bind是个bind函数,但是Cls.bind可能被覆盖。所以用Function.prototype.bind替换。

eval or new Function

http://dfkaye.github.io/2014/03/14/javascript-eval-and-function-constructor/
eval执行代码是,作用域设在当前执行作用域,可以访问局部变量。
The eval function has access to the global scope, so it can clobber any globals as well. Function shares this problem.
eval可以访问全局作用域,所以它能狠揍(哈哈)任何全局变量。Function不存在这个问题。
new Function不能访问当前作用域。可以访问全局。
new Function是都会修改全局的。狠揍的意思是定义变量不写var前缀。
eval是,如果当前中有,则修改当前的。如果没有则狠揍全局的。

时间: 2024-10-08 17:41:41

Nodejs技巧的相关文章

学习老外用webstorm开发nodejs的技巧--代码提示DefinitelyTyped

最近入了nodejs的坑,作为老码农,js对我来说还是很容易的.webstorm虽说用得不多,但是pycharms我是老手了,idea的东西一脉相承,想想也就那样了. 但是自从看了某个视频后,觉得毕竟老外就是牛啊. 先发视频"WebStorm - MEAN Stack Walkthrough and Tips",地址:http://www.tudou.com/programs/view/txhBUA7fcNA/?resourceId=0_06_02_99 另外有一个视频也值得推荐看看:

nodejs使用技巧

1.nvm,nodejs版本管理工具,可以自由切换nodejs版本 https://github.com/coreybutler/nvm-windows/releases 在这里下载安装. 使用命令: nvm ls 查看所有可用nodejs版本 nvm use x.x.x 使用x.x.x版本 nvm install x.x.x安装x.x.x版本 2.nrm,nodejs源切换工具,可以自由切换nodejs下载源 npm install nrm -g 全局安装nrm nrm ls 查看可用的npm

nodejs 环境配置技巧

环境:Mac OSX 10.10.3 NodeJS:v0.12.2 NodeJs 安装指需要 1.执行 npm install xxxx -g 时 需要执行 sudo npm install xxxx -g 否则 会提示Please try this command as root/administrator 2.安装Package Control 时候 会发现跟Window 上面会有些不一样 是在下图中位置的 现在安装Zen Coding 需要 command+shift+p ->输入IP->

nodejs 调试技巧

1, 命令行调试 run 执行脚本,在第一行暂停 restart 重新执行脚本 cont, c 继续执行,直到遇到下一个断点 next, n 单步执行 step, s 单步执行并进入函数 out, o 从函数中步出 setBreakpoint(), sb() 在当前行设置断点 setBreakpoint('f()'), sb(...) 在函数f的第一行设置断点 setBreakpoint('script.js', 20), sb(...) 在 script.js 的第20行设置断点 clearB

45个实用的JavaScript技巧、窍门和最佳实践

如你所知,JavaScript是世界上第一的编程语言,它是Web的语言,是移动混合应用(mobile hybrid apps)的语言(比如PhoneGap或者Appcelerator),是服务器端的语言(比如NodeJS或者Wakanda),并且拥有很多其他的实现.同时它也是很多新手的启蒙语言,因为它不但可以在浏览器上显示一个简单的alert信息,而且还可以用来控制一个机器人(使用nodebot,或者nodruino).掌握JavaScript并且能够写出组织规范并性能高效的代码的开发人员,已经

nodejs学习资料

NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS

WebStorm常用功能的使用技巧分享

WebStorm 是 JetBrain 公司开发的一款 JavaScript IDE,使用非常方便,可以使编写代码过程更加流畅. 本文在这里分享一些常用功能的使用技巧,希望能帮助大家更好的使用这款强大的 JavaScript 开发工具. 代码编辑 代码跳转: Ctrl + 左键 或者 Ctrl + B,可以跳转到函数或者变量的声明位置 调用位置: Alt + F7,查找调用者 自动补全: 最好是修改一下响应时间,Settings->Editors->General->Code Compl

前端构建工具gulpjs的使用介绍及技巧

gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简单,学习起来很容易,而且gulpjs使用的是nodejs中stream来读取和操作数据,其速度更快.如果你还没有使用过前端构建工具,或者觉得gruntjs太难用的话,那就尝试一下gulp吧. 本文导航: gulp的安装 开始使用gulp gulp的API介绍 一些常用的gulp插件 1.gulp的安装 首先确保你已经正确安装了nodejs环境.然后以全局方式安装gulp: npm inst

七天学会NodeJS

NodeJS基础 什么是NodeJS JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对于需要独立运行的JS,NodeJS就是一个解析器. 每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情.例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了document之类的内置对象.而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器,NodeJS