node 概述 Node是什么 能用Node干什么
1.1 node概述
什么是node
- node是一个JS运行环境
浏览器也是一个运行环境,JS代码写好之后需要放到浏览器里面去运行,脱离了浏览器是没有办法运行的,现在不仅浏览器能运行JS,Node也能运行Js。
他比浏览器拥有更多能力
浏览器中的JS
- Javascript 能写Ecmascript (例如es6,es7,es2016 …)和Ecmascript i (dom操作,bom 操作 …)
- Web Api 提供了操作窗口的能力
- BOM
- DOM
- AJAX
- 这种能力是非常有限的
- 跨域问题
· 浏览器提出一个同源策略,保证每个网站的数据不被其他网站获取,所以提出了同源策略也就导致了跨域等一系列问题 - 文件读写
· 我们不能用Js去读取文件(允许有限的读写文件,但是收到浏览器的限制)但是不能代表Js语言不能读取文件
- 跨域问题
Node中的 Js
- 他同样包含了Ecmascript Node Api
- Node Api几乎提供了所有能做的事
· 就是运行的Js可以完整地控制你的电脑,但是只能在Node里面运行
分层结构对比图
- 浏览器提供了有限的能力,JS只能使用浏览器提供的功能做有限的操作
- Node提供了完整的 控制计算机的能力,NodeJS几乎可以通过Node提供的接口,实现对整个操作系统的控制
node官网 https://nodejs.org/
node 中文网 http://nodejs.cn/
node是一个单线程的应用程序它使用的是异步回调模式,它的好处是没有线程之间的竞争,而且单线程它的I(input)O(output)处理速度是非常快的,在线程之间的切换是比较耗费资源的,并且现在node环境已经经过优化也可以像多线程一样使用多核处理数据,但是node不适合做巨大的运算的,
我们通常用node干什么
- 开发桌面应用程序
- 开发服务器应用程序
结构一
- 这种结构通常应用到微型站点上(比如个人博客,或者公司的小型官网)
- Node服务器要完成请求的处理,响应,和数据
结构二
- 这种结构非常常见应用在各种规模的站点上
- Node服务器不作任何业务逻辑有关的事情绝大部分事情,只是简单的转发请求但可能会有一些额外的请求
· 简单的信息记录
1. 请求日志
2. 用户偏好
3. 广告信息
· 静态的资源托管
· 缓存
node 概述 Node是什么 能用Node干什么相关推荐
- Node概述_note
Node概述 Node的执行方式 Node环境和浏览器环境的区别 Node身上全局对象的属性 Node中的模块 Node中导出数据的几种方式 1.什么是Node.js? Node.js 是一个基于&q ...
- Node.js高级编程【一】node 基础
目录 一.Node 基础 1.课程概述 2.Node.js 架构 3.为什么是Node.js ? 4.Node.js 的 异步IO 5.Node.js 主线程是单线程 6.Node.js 应用场景 7 ...
- cpu多核 node 单线程_详解node单线程实现高并发原理与node异步I/O
一.node单线程实现高并发原理 众所周知nodejs是单线程且支持高并发的脚本语言.可为什么单线程的nodejs可以支持高并发呢?很多人都不明白其原理,下面我来谈谈我的理解: 1. node的优点: ...
- 《Node.js入门》Windows 7下Node.js Web开发环境搭建笔记
最近想尝试一下在IBM Bluemix上使用Node.js创建Web应用程序,所以需要在本地搭建Node.js Web的开发测试环境. 这里讲的是Windows下的搭建方法,使用CentOS 的小伙伴 ...
- Node.js:Windows7下搭建的Node.js服务(来玩玩服务器端的javascript吧,这可不是前端js插件)...
什么是Node.js?还服务器端javascript?对于这个概念我在这篇文章不做解释,可以自己去搜索了解下,服务器端js不是新技术,只是最近的node.js的火爆让他爆发了,我会在以后的文章里解释什 ...
- node 更新_被创造者嫌弃,Node.js 如何应对来自 Deno 的挑战
(给前端大全加星标,提升前端技能) 转自:OSC开源社区 JavaScript 运行时 Node.js 于日前更新到了 15 版本,该软件自发布至今已走过了 11 年的岁月.但在今年 5 月,其竞争 ...
- Node.js:海量数据大行其道的今天 node.js 在IO方面如何异步非阻塞
以其高性能,异步IO著称,当然node.js 在 stream 上的异步也非常到位. 我们一般理解的异步请求是这样的: 同时处理多件件事件 A,B,C,D,E,F,G .... 如果用.net语言去处 ...
- node.js使用手册_权威的Node.js手册
node.js使用手册 Note: you can get a PDF, ePub, or Mobi version of this handbook for easier reference, or ...
- 刚去公司,发现node版本过高,如何将node版本降低?
我们可以安装nvm,node版本管理器来实现. 1.nvm是什么? nvm(node.js version management),是一个nodejs的版本管理工具.nvm和n都是node.js版本管 ...
最新文章
- python 判断字符串是否为空,字典是否为空,列表是否为空,元组是否为空的方法
- Linux下 WiFi rtl 移植,IMX6Q Linux WIFI+BT(RTL8723au)模块移植问题
- CTE 中字符串拼接
- 半个月两次投资,百度健康再扩服务版图
- 【软件工程】关于计算机的一些问答与思考
- cocos2d python文档_【Cocos2D-X 学习笔记】Cocos2D-x 3.0+VS开发环境搭建[使用Python]
- jlist动态添加元素后刷新_小米电视5再曝光:MEMC动态画质补偿技术
- 计蒜客挑战难题:移除数组中的重复元素
- 阿里、腾讯 | 算法岗面试复盘
- Cpp module
- java中res是什么意思_java中的set是什么意思
- [ABAP] Debug心得
- 建筑工程计算机的应用,计算机对建筑工程的应用
- fileupload控件的属性_FileUpLoad控件简介.ppt
- AXI4总线协议总结
- Scratch 游戏项目学习法 —— 接苹果(十)接住苹果
- 使用go get安装,老是报错:go: golang.org/x/tools@v0.0.0-20190322203728-c1a832b0ad89: unrecognized import path
- java----缓存
- 如何正确对用户密码进行加密?
- qt读取文件里的数据并做折线图 并鼠标触碰显示