• 死磕NodeJs之REPL与For Services


    ode.js REPL(Read Eval Print Loop:交互式解释器) 表示一个电脑的环境,类似 Window 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应。

    Node 自带了交互式解释器,可以执行以下任务:

    • 读取 - 读取用户输入,解析输入了Javascript 数据结构并存储在内存中。

    • 执行 - 执行输入的数据结构

    • 打印 - 输出结果

    • 循环 - 循环操作以上步骤直到用户两次按下 ctrl-c 按钮退出。

    Node 的交互式解释器可以很好的调试 Javascript 代码。

    开始学习 REPL

    我们可以输入以下命令来启动 Node 的终端:

    这时我们就可以在 > 后输入简单的表达式,并按下回车键来计算结果。

    简单的表达式运算

    接下来让我们在 Node.js REPL 的命令行窗口中执行简单的数学运算:

    $ node
    > 1 +4
    5
    > 5 / 2
    2.5
    > 3 * 6
    18
    > 4 - 1
    3
    > 1 + ( 2 * 3 ) - 4
    3
    >

    使用 var 关键字的变量可以使用 console.log() 来输出变量

    console.log("Hello World")

    多行表达式

    Node REPL 支持输入多行表达式,这就有点类似 JavaScript。接下来让我们来执行一个 do-while 循环:

    do{
    ... x++;
    ... console.log("x:"+x);
    ... }while(x<5);
    x:1
    x:2
    x:3
    x:4
    x:5
    undefined

    下划线(_)变量

    你可以使用下划线(_)获取上一个表达式的运算结果:

    > x + y
    30
    > var sum = _
    undefined
    > console.log(sum)
    30
    undefined

    REPL 命令

    • ctrl + c - 退出当前终端。

    • ctrl + c 按下两次 - 退出 Node REPL。

    • ctrl + d - 退出 Node REPL.

    • 向上/向下 键 - 查看输入的历史命令

    • tab 键 - 列出当前命令

    • .help - 列出使用命令

    • .break - 退出多行表达式

    • .clear - 退出多行表达式

    • .save filename - 保存当前的 Node REPL 会话到指定文件

    • .load filename - 载入当前 Node REPL 会话的文件内容。

    停止 REPL

    前面我们已经提到按下两次 ctrl + c 键就能退出 REPL:

    停止 REPL
    前面我们已经提到按下两次 ctrl + c 键就能退出 REPL:

     NodeJs For Server

    前提:NodeJs 是CommandJs 即每个Js 都是一个模块,倘若你想让一个模块暴露变量,可以用module.exports = variable;

    而另一个模块想要引用另一个模块暴露的变量,用require关键字就可以了,如var ref = require("module_name");

    我们试着编写一个http服务器.

    如下:

    接下来就是调用引入的HTTP模块的一个工厂模式方法(createServer)来创建一个新的http服务器。

    如下:

    由于nodeJS的特性之一是事件驱动,so当我们访问一个http服务器时,它会触发一个request事件,我们利用其进行相应处理。

    例如,我们的处理方式是,利用writeHead来设置HTTP的响应头和HTTP正文。

    具体代码如下

     

    最后,就是想监听的端口号咯。比如我们监听的是80端口。

     

    代码以及很完美了,但,为了方便在nodeJS交互环境下运行该js文件后,知道服务器已经启好了,我们还是打印一条日志吧。

    如下:

     EntireCode

    好了,开启nodeJS交互环境,运行该js文件,我的命名是http.js。

    so:

    这样http服务器就启好了,接下来我们再打开网页,输入127.0.0.1:80,看看效果:

     

    good!!有木有一点小小的激动,这样就把http服务器启好并运行起来了。

  • 相关阅读:
    链表10-开发可用链表(使用链表)
    LRU简单实现
    图片服务器搭建过程
    scp
    dubbo-admin无法访问
    linux tomcat启动后无法访问
    linux进程端口防火墙
    centos7 jdk
    com.alibaba.dubbo.rpc.RpcException: Fail to start server(url: dubbo://192.16。。
    linux与Unix切换到root用户
  • 原文地址:https://www.cnblogs.com/ZaraNet/p/9576805.html
Copyright © 2020-2023  润新知