nodejs为什么可以操作文件原理

JavaScript09

nodejs为什么可以操作文件原理,第1张

其实我觉得先回答另一个问题,为什么javascript不能直接操作文件。

如果要处理文件,待处理的文件必须经过用户上传,或者下载一个文件给用户。

主要还是安全性问题,不能让浏览器直接改硬盘上的文件,用户上传的文件可以读可以写。

nodejs虽然和js一样是V8引擎,但是它是服务器端的,就跟java,php一样,可以直接操作文件。

其实不管是js还是nodejs都可以操作文件的,原理就是根据请求文件的路径和文件名,从硬盘上读出来...我觉得你并不是想问这个,你想问的我一开始就说了。

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。

Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言。发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。

Node对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。V8引擎执行Javascript的速度非常快,性能非常好。Node是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

扩展资料:

Node采用一系列“非阻塞”库来支持事件循环的方式。本质上就是为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻塞接口会通知Node。

该模型以可扩展的方式简化了对慢资源的访问, 直观,易懂。尤其是对于熟悉onmouseover、onclick等DOM事件的用户,更有一种似曾相识的感觉。