Node.JS教程55:强大的REPL
在Node中,有一个神器:REPL,全称是:Read Eval Print Loop。即:交互式解释器。
从名称上,看不出它能干什么。那么,我们直接从一个示例来看吧:
本文共需两个程序:
首先是test55.js,它用以前文章中的一个例程代码,再加一个REPL服务器功能:
前半部分,是一个简单的http服务器功能,后面部分是repl服务器部分。
接下来,还需要一个repl服务器:
repl_client.js:
有了这两部分程序,就可以演示repl的强大了:
启动test55.js,再启动repl_client.js。
在repl_client命令行中操作:
1、通过REPL查看进程信息,如:运行了多少、使用了多少内存:
注:运行时间单位是秒,内存用量单位是byte。
有点意思了。
2、通过REPL查看程序中的变量:
这是怎么实现的呢?test55.js程序中的变量,被REPL客户端获取了。
当然,我们也可以通过类似的方法获取其它变量,用于调试的话,这会非常强大。
但这还不是最强大的。
2、通过REPL控制程序行为:
输入:
看看发生什么?
主程序中输出了!
更进一步:修改主程序中的变量:
还有更过份的:修改主程序,给主程序添加函数:
然后,在浏览器中访问主程序端口:
执行了console方法,并且有我们上面设定的标识:“MYGOD!“。