这篇文章主要为大家展示了“Nodejs面试题有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Nodejs面试题有哪些”这篇文章吧。
第1题:什么是nodejs?我们在哪里使用它?
Nodejs是服务器端的一门技术。它是基于Google V8 JavaScript引擎而开发的。用来开发可扩展的服务端程序。
第2题:为什么要使用node js?
nodejs会让我们的编程工作变得简单,它主要包含如下几点几个好处:
①执行快速。
②永远不会阻滞。
③JavaScript是通用的编程语言。
④异步处理机制。
⑤避免并行所带来的问题。
第3题:nodejs有哪些特点?
是单线程的,但是有很高的可扩展性,使用JavaScript作为主流编程语言。使用的是异步处理机制和事件驱动。处理高效。
第4题:Set immediate和set time out 区别在哪里?
Set immediate就是马上执行的意思。Set time out,时间参数传为0,也想获得同样的功能。只不过前者要快一些。
第5题:如何更新nodejs的版本?
npm install npm -g
第6题:为什么nodejs是单线程的?
Nodejs使用的是单线程没错,但是通过异步处理的方式,可以处理大量的数据吞吐量,从而有更好的性能和扩可扩展性。
第7题:什么是回调函数?
回调函数是指用一个函数作为参数传入另一个函数,这个函数会被在某个时机调用。
第8题:什么叫做回调地狱?
回调地狱是由嵌套的回调函数导致的。这样的机制会导致有些函数无法到达,并且很难维护。
第9题:如何阻止回调地狱?
有三种方法,对每个错误都要处理到,保证代码的贯通,程序代码模块化。
第10题:解释一下repl的作用?
Read evaluate print loop,用于测试,调试和实验用。
第11题:API函数的类型有哪些?
有两种:一种是阻滞型函数。阻滞型函数会等待操作完成以后再进行下一步。
另外一种是非阻滞型函数。这种函数使用回调函数来处理当前函数获取的结果。
第12题:回调函数的第1个参数是什么?
通常是错误对象。如果这个参数为空,表示没有错误。
第13题:NPM的作用是什么?
Node package manager,主要有两个功能。
它是一个网端模块的存储介质。
它的另一个作用是安装程序依赖和版本管理。
第14题:nodejs和ajax的区别是什么?
Nodejs和ajax也就是asynchronous JavaScript and xml,都是通过JavaScript来表现的,但是他们的目的截然不同。
Ajax是设计用来动态的更新页面的某个区域,从而不需要更新整个页面。
Nodejs是用来开发客户服务器类型应用的。
第15题:解释一下nodejs中chaining.
Chaining是指从一个数据流到另一个数据流的链接,从而实现多个流操作。
第16题:什么是streams?解释一下有哪些类型?
流的概念是不间断的,它可以不间断的从某个地方读取数据,或者向某个地方写入数据。
有4种类型的流数据。可读,可写。既可读,又可写,转化。
第17题:退出代码是什么?有哪些退出代码?
退出代码是指中断nodejs运行时返回的代码。
有这么几种unused, uncaught fatal exception, fatal error, non function internal exception handler, internal exception handler run time failure,internal JavaScript evaluation failure.
第18题:什么是globals?
有三个global的关键字。
Global代表的是最上层的命名空间,用来管理所有其他的全局对象。
Process 是一个全局对象,可以把异步函数转化成异步回调, 它可以在任何地方被访问,它主要是用来返回系统的应用信息和环境信息.
Buffer, 是用来处理二进制数据的类.
第19题:Angular js和node js的区别是什么?
Angular js是网络应用开发框架,而nodejs是一个实时系统。
第20题:为什么统一的风格儿非常重要,有什么工具可以保证这一点?
统一的风格可以让所有的组成员按照一种规矩来写代码。工具有Standard和eslint.
第21题:用什么方法来处理没有被处理的异常?
在应用和node js之间使用domain来处理这样的异常。
第22题:Node js是如何支持多处理器平台的?
Cluster模块是用来支持这方面的。它可以允许多个nodejs工作进程运行在相同的端口上。
第23题:如何配置开发模式和生产模式的环境?
首先有一个配置文件,然后通过环境变量参数来获取对应的配置内容。
第24题:nodejs中跟时间相关的函数有哪些?
①Set time out,clear time out.
②Set interval,clear interval.
③Set immediate,clear immediate.
④Process.nextTick.
第25题:解释一下什么是reactor pattern。
Reactor pattern主要是非阻滞的i/o操作。提供一个回调函数来关联io操作。io请求完成以后会不会提交给demultiplexer, 这是一个通知接口用来处理并发性的非阻滞的io操作,这个功能是通过查询一个event loop来实现的.
第26题:lts版本是什么意思?
也就是long term support版本。至少会被支持18个月。使用的是偶数来标识。这种版本有稳定性和安全性的保证。
第27题:你为什么需要把express APP和server分开?
分开以后方便维护以及测试,在测试某个模块的时候,尤其是APP模块的时候,你不需要去对网络方面的连接配置做工作。
第28题:next tick和setImmediate的区别是什么?
Next tick会等待当前的event执行完成或者下一轮儿事件循环到达再执行。
Set immediate,会在下一轮的事件循环中,执行回调并且返回当前的循环来做读写操作。
以上是“Nodejs面试题有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。