前端和Nodejs的关系 简单理解
前端使用JS脚本语言进行开发。
JS脚本语言需要依赖一个平台运行,从而生成可视化的东西。
Node.js提供这个平台,同时提供JS运行需要的一些插件、库、包、轮子、组件、功能等等。
JavaScript是一门脚本语言,它需要一个运行环境。就好像PHP需要Apache,JSP需要Tomcat等等(例子不全面,仅供理解)…… 而NodeJS之前,JavaScript运行环境是浏览器,也就是JavaScript在网页中才能跑起来。NodeJS之后JavaScript又多了一个运行环境,就是NodeJS。
由于NodeJS的最底层是Chrome的V8引擎,然后libuv封装了一些I/O的线程池管理和网络的I/O操作,这部分是C/C++写的。简单来说NodeJS可以控制系统文件的读写,网络的输入输出。所以NodeJS又可以被单纯的认为是一个可以运行 JavaScript 的服务器。(例子不全面,仅供理解)。
这些工具的起源和诞生几乎浓缩了前端的发展历程,因为 NodeJS 可以读写文件,监听网络输入输出。所以 NodeJS 和 VueJS、ReactJS、AngularJS 有非常本质的区别。NodeJS 是可以运行 JavaScript 的环境,剩下三个是用 JavaScript 写的库。
目前NodeJS大多被用于前端开发的开发环境。以Webpack作为例子,webpack是一个运行在 NodeJS 端的打包工具,它帮你把你写的 a.js, b.js, c.js ... 打包成一个 bundle.js。而这种打包的第一步是读取(文件读取能力)你的a.js, b.js, c.js ...,所以只能在 NodeJS 环境下做。
NodeJS 还能做啥?
用JS做服务器: Express / EggJS / HAPI / Koa 等等可以了解下
用JS做移动端混合应用:PhoneGap / Cordova / Ionic 了解下
用JS做移动端原生应用:React-Native / NativeScript / WEEX 了解下
最新文章
- safari cookie设置中文失败
- fedora23的打印服务
- AJAX(一、基本知识)
- 多国语言文档识别 ABBYY FineReader Corporate v12.0.101.388.7z 绿色破解版
- asp.net的code-Behind技术
- 在cocos code ide的基础上构建自己的lua开发调试环境
- MVVM设计模式《网摘》
- yii_wiki_145_yii-cjuidialog-for-create-new-model (通过CJuiDialog来创建新的Model)
- POJ 2151 Check the difficulty of problems (动态规划-可能DP)
- 统计知识选讲(二)——主成分分析(PCA)的推导和应用
- PHP安装sqlsrv扩展步骤,PHP如何连接上SQL
- Eralng的常用数据结构
- io多路复用(一)
- linux内存源码分析 - 内存池
- 腾讯云centos7安装MySQL
- JavaScript 中回调地狱的今生前世
- centos 7 修改系统屏幕分辨率
- Linux 搭建 Jenkins
- Uncaught TypeError: (intermediate value)(...) is not a function 上一个方法结束没有加分号; 代码解析报错
- [整理]zepto的初次使用
热门文章
- Unity 游戏框架搭建 2019 (四十四、四十五) 关于知识库的小结&;独立的方法和独立的类
- 物流配送中心管理系统(SSM+MYSQL)
- 用VirtualBox代替VMWare安装Ubuntu系统图文教程总结
- Awareness Kit让你的音乐APP脱颖而出,更懂用户,也更动人心
- 云小课 | WAF反爬虫“三板斧”:轻松应对网站恶意爬虫
- CF#132 C. Logo Turtle DP
- 【hdu1030】“坐标表示法”
- 使用npoi导入Excel - 带合并单元格--附代码
- 学习ASP.NET Core(05)-使用Swagger与Jwt授权
- 不吹牛X,我真的干掉了if-else