当前位置:主页 > nodejs教程 > Node.js的特点详解

Node.js特点分析

发布:2020-01-21 15:04:14 113


为找教程的网友们整理了Node.js相关的编程文章,网友范俊德根据主题投稿了本篇教程内容,涉及到Node.js、Node.js特点、Node.js的特点详解相关内容,已被197网友关注,相关难点技巧可以阅读下方的电子资料。

Node.js的特点详解

Node.js是一个基于Chrome v8引擎建立的Java运行平台,用于搭建响应速度快、易于扩展的网络应用。本文和大家分享的是Node.js的一些特点,希望对大家学习Node.js有帮助。

异步I/O

这里,我们来详细解释一下:

异步是什么意思

比如说你的爸,今天要叫你做些事情,比如说你要做饭、洗衣服还有扫地,以及烧开水等等一系列的事情。那么,就你一个人来说,你是不是得一件事一件事的挨个做完了之后,才能接着做下一件事。比如说,你是不是烧完开水,然后才来扫地,扫完地然后再来煮饭,煮完饭,你可能才会做其他事情。那么这个过程,我们把它叫做同步的过程。你做一件事,你必须要等待,等待做完了之后,再做另外一件事。那么这个时候,如果我们懂得合理安排时间的话,我们可以这样办:我们在烧开水的时候,我们可以扫地,因为烧开水不用我们守着嘛!只需要把水放好,或点燃就行了。然后,我们可以去做其他事情了。比如说,扫地,或者是洗衣服,等等一系列的事情我们都可以做。那么这样,在做完了同样的事情,但是我们所需要花费的时间,它是不一样的。你用后面这种方式,可能用的时间会更短,效率更高。而你用前面那种同步的方式,它的效率会更低。那么,后面这种事情,我们就把它叫做异步的操作。

事件与回调

如果你采用异步的方式来做事情,它的效率会很高,但是你同时只能做一个事情。比如说,你烧开水的时候,虽然说不用你守在那里。但是你扫地了过后,你这个水烧开的时候,我怎么知道呢?(就是这件事做好了之后,我怎么知道呢?)

于是我们可以想一下,在这个水壶上面,给它放一个小喇叭,当这个水烧开了之后会冒蒸汽,当这个蒸汽吹响这个喇叭的时候,我们就知道这个事情做好了,水烧开了,我们就可以接着做水烧开之后的事情了。

这个事件与回调就是:这个水烧开了以后,它会以事件的形式来通知你(我这个事情做好了,你可以把这个水装好了)。

回调是什么意思

当它的事件发生了过后,它会通知你,那么你在装水这个过程,就是在回调(就是处理这个过程)。处理完烧开水过后的结果

单线程

这一点是node.js比较大的一个特点。它可以开发出高效的后台应用(网络应用)

什么是单线程

还是用刚才那个例子。你爸叫你做很多件事情,如果你不懂的合理安排时间,你就只能用同步;那么同步的时候,你可能会这样想:我叫我几个小伙伴来帮我做这个事情(叫个两三个小伙伴)。一个帮我烧开水,一个帮我扫地,一个帮我煮饭。这样操作的话,在同一个时间段,就有多个人来帮你做事情。(这种操作,我们把它叫做多线程操作,就是同一时间段,有多个人来做事情)

多线程操作它有个缺点,就是你请这些小伙伴来帮你做事情,肯定要犒劳一下他们,那么你势必会花费一下你的零用钱,你肯定要买点好吃的东西来犒劳一下。那么这样,如果你不想花你的钱,但是你又想把事情做好,那么你怎么办呢?只能按照刚才我们异步的方式,就是你一个人做。又要提高效率怎么办呢?就是我做这件事情的时候,同时又要做其它事情,那么这个就是单线程(就是一个人做事情)。

跨平台

目前我们的node.js在mac系统上、Windows上面和Linux这些上面,都可以运行,它已经开发除了对应的运行环境了。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持码农之家!


参考资料

相关文章

  • travis-ci持续部署node.js应用的方法

    发布:2020-01-13

    最近在学习使用 travis-ci 对项目进行持续集成测试,所以下面这篇文章主要给大家介绍了关于使用travis-ci如何持续部署node.js应用的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下


  • Node.js使用AngularJS的方法总结

    发布:2019-07-30

    这篇文章主要介绍了Node.js 使用AngularJS的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • Node.js服务器作为api服务器的解决方案

    发布:2019-11-27

    本篇文章主要介绍了详解本地Node.js服务器作为api服务器的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。


  • 关于Node.js查找当前目录下文件夹

    发布:2020-03-16

    本篇文章主要介绍了Node.js查找当前目录下文件夹实例代码,具有一定的参考价值,有兴趣的可以了解一下。


  • 基于Node.js的HTTP/2 Server实践总结

    发布:2019-08-01

    HTTP/2目前已经逐渐的在各大网站上开始使用,这篇文章主要介绍了详解基于Node.js的HTTP/2 Server实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • Node.js中使用计时器定时执行函数的方法实例

    发布:2019-08-09

    这篇文章主要介绍了Node.js中使用计时器定时执行函数详解,本文使用了Node.js中的setTimeout和setInterval函数,需要的朋友可以参考下


  • Chrome DevTools直接调试Node.js和JavaScript的实例方法

    发布:2019-09-14

    现在我们可以用浏览器调试node.js了!!!下面这篇文章主要介绍了利用Chrome DevTools直接调试Node.js和JavaScript的方法步骤,文中介绍的很详细,需要的朋友可以参考学习,下面来一起看看吧。


  • 关于Node.js编码规范

    发布:2020-03-05

    编码规范比比皆是,但是很少有公司做好编码规范的。忍不住想谈谈编码规范的重要性,希望所有人都能够重视起来。


网友讨论