nodejs-repl

repl:可交互运行环境,可以对简单的nodejs程序进行调试,如何进入到repl测试环境呢

其实我们在写第一个nodejs程序时候已经运用到了repl

当我们node时候,在控制台出现了> ,这表示我们已经到了repl运行环境。

如图

repl操作变量

可见

foo=“sssss”;//为变量名foo赋值

var foo=“qqqq”;//更改变量名foo的值。

第一个返回了变量值,第二个返回的是undefinded,这是因为repl用eval评估表达式的执行结果

console.log("foo='sssss'");

console.log("varfoo='qqqq");

repl操作对象


上面的图片,可见我们操作一个对象,直接new Object()就ok了。对象.属性,对象.方法,当给属性赋值完,在控制台直接把属性值输出,当赋值完方法,控制台会输出function。

.break作用:我们函数function写成了funcation 这样diamante肯定编译不成功,所以我们放弃这个方法的编写,输入.break 回到书写这个方法的头部,继续编写此方法,也可是ctrl+c,也可以.clear

在上面我们对userphone进行了setphone(“18518000444”),当我们user时候,发现user.phone并没有更改,原因是我们user.phone=this.phone了,书写时候没注意。


repl中“_”下划线字符


可见_在repl中表示最近执行的表达式,他不能更改变量的值,


repl上下文对象

在repl中,start()方法可以开启一个repl运行环境,start方法返回别开启的repl环境,可以为repl运行环境指定一个上下文对象,可以在repl环境中作为全局变量来使用

建一个context.js

var repl=require("repl");

var con=repl.start().context;

con.msg="示例消息";

con.textMessage=function(){console.log(con.msg)};

我们node编译这个js模块时候报错了 (Error: An options Object, or a prompt String are required)


原因是repl.start()写的不对,老版本应该是上面的写法,修改代码

var repl=require("repl");

var con=repl.start('> ').context;

con.msg="示例消息";

con.textMessage=function(){console.log(con.msg)};

编译文件

输入message textMessage()都有返回

.clear 表示清除上下文变量。

.exit 退出node  ctrl+d

.help

.save  把repl环境中输入的东西存储到一个文件上

我们看看我保存的js文件

.load 把一个文件加载到repl环境上去

.load ./save2.js



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值