nodejs基础与思想领悟

      nodejs设计是一个轻量级的服务端语言。设计初衷是为了方便前端开发人员,在对后端开发不熟悉,又需要快速搭建后端代码协助前端测试的时候,nodejs的优势便体现出来了。

       相比C、C++、Java等主流后端语言而言,他的入门是最简单的,也更灵活,下面便来开启他的入门之旅吧。

       1 基础学习,可以参考https://www.cnblogs.com/giggle/p/5357269.html。

          通过这篇文章的学习,便会安装、使用nodejs。有两种途径去使用nodejs(1控制台。2visual studio code调试工具)。

       2 深度学习。

 https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434502419592fd80bbb0613a42118ccab9435af408fd000

         学习这篇文章后,便会理解下面几个概念了。

          2.1 什么是模块?

          答:模块就是一个独立的js文本。模块的名字就是文件名(去掉.js后缀),所以hello.js文件就是名为hello的模块。

         2.2 如何把函数暴露给其他模块使用?

           答:1)模块内部(hello.js)中,在尾部执行如下代码:

                      module.exports = greet;

                  2)在模块外部(main.js)中,引用:

                       var greet = require('./hello');

                   3)这样我们就可以在main.js中,使用greet函数了。

                       greet(1);

         3 异步调用

      由于node.js采用V8引擎,单线程调用,因此我们大量采用异步调用。即不等函数调用完成,继续执行下面的操作,又称为非阻塞式编程。

      示例:

1)我们创建一个input.txt文本,文本内容为:

菜鸟教程官网地址:www.runoob.com

2)我们采用阻塞式编程方式,创建main.js调用这个文本文件。

var fs = require("fs");

fs.readFile('input.txt', function (err, data) {
    if (err) return console.error(err);
    console.log(data.toString());
});

console.log("程序执行结束!");

执行结果如下:

$ node main.js
程序执行结束!
菜鸟教程官网地址:www.runoob.com
3)我们采用非阻塞式编程方式,创建main.js调用这个文本文件。
var fs = require("fs");

fs.readFile('input.txt', function (err, data) {
    if (err) return console.error(err);
    console.log(data.toString());
});

console.log("程序执行结束!");

执行结果如下:

$ node main.js
程序执行结束!
菜鸟教程官网地址:www.runoob.com
通过非阻塞式编程的方式,我们看到node.js代码跟JavaScript代码编程思想是如此的相似。 当然这个不是Node.js或者javascript独有的,而是一种风格,例如c#中的Tread,Task,java中的Thread,Runable等都是异步编程。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值