nodejs学习

nodejs学习笔记

依然范特西╮ 提交于 2020-03-30 05:01:48
Nodejs学习文档整理 1、nodejs是什么: nodejs是一个是javascript能在后台运行的平台,具体来时只是使code javascript能在后台运行,因为不在浏览器中运行所以不涉及到document等对象。(Mozilla 则指出 JavaScript 由Core JavaScript 和 Client JavaScript 组成。) 2、nodejs如何运行javascript: nodejs利用谷歌的v8引擎来执行javascript代码(V8认为是javascript的引擎中最快的)。 3、nodejs的特性: Node.js 用异步式 I/O 和事件驱动代替多线程,带来了可观的性能提升。nodejs采用单线程的非阻塞模式,可以使CPU的利用率达到100%。(单线程是指我们所写的代码代码每次只能执行一行,nodejs本身不是单线程的,比如我们调用了nodejs的ioAPI,系统会通过c/c++开辟其他线程来完成,nodejs的底层是由c/c++完成的)nodejs本身提供HTTP服务,也就是说你可以轻而易举地实现一个网站和服务器的组合而nodejs项目不需要类似tomcat等web容器。 4、nodejs适合的做什么,不适合什么: 适合:具有复杂逻辑的网站; 基于社交网络的大规模 Web 应用;Web Socket 服务器; TCP/UDP 套接字应用程序

原生nodejs 学习笔记1

烈酒焚心 提交于 2020-03-30 04:38:59
网上许多nodejs教程或书藉都是教你调用第三方模块来编写nodejs应用的,虽然这是非常便捷的,但是封装太厚,你基本一点东西还是没有学到。人家的模块,人家想怎么改就行,可以下一版本就改了接口,你的应用就完蛋了。比如说google,他就爱干这种事情。因此我们还得老老实实学习底层API吧。 本节首先教大家跑起一个页面吧。 我在以前就写一篇相关的, node.js 一个简单的页面输出 ,大家可以先预习一下。 一般来说,大家都是从这样一个例子入门 var http = require("http"); http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.write("Hello node.js"); response.end(); }).listen(8888); 上面脚本写在一个app.js上面,然后打开控制台,定位于它所在目录,输入node app,再打开某一浏览器,输入http://localhost:8888/就看出效果。 分析上面脚本: 引入依赖,这是前端AMD规范未流行前, 非常神奇的东西。不过一个项目这么大,肯定要分成N个目录N个文件,各人负责一部分,减少合并冲突的风险 require("http"

nodejs菜鸟学习

Deadly 提交于 2020-03-30 04:37:29
1.安装nodejs:   查看版本,node --version   输入helloworld console.log("helloworld")   建议使用nvm来管理nodejs的版本 2.创建应用的步骤:   用require 引入http模块,赋值给变变量,使用createServer()方法返回服务端的对象,调用listen方法,设置监听端口,request和 response分别白处理请求和返回参数   var http = require('http')   http.createServer(function(request,response){     response.writeHead(200,{'Content-Type':'text/plain'});     response.end('hello world\n');   }).listen(8888);   console.log('Servier running at http:127.0.0.1:8888/'); 3.npm的使用(类似pythono的install,但是能下载,又能上传) 来源: https://www.cnblogs.com/caozijian-zm/p/10376051.html

NodeJS基础学习总结

一曲冷凌霜 提交于 2020-03-30 03:19:17
一、nodeJS解释   JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。    每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情 。例如运行在浏览器中的JS的用途是操作DOM, 浏览器就提供了 document 之类的内置对象 。而运行在NodeJS中的JS的用途是操作磁盘文件或搭建HTTP服务器, NodeJS就相应提供了 fs 、 http 等内置对象 。   尽管存在一听说可以直接运行JS文件就觉得很酷的同学,但大多数同学在接触新东西时首先关心的是有啥用处,以及能带来啥价值。   NodeJS的作者说,他创造 NodeJS的目的是为了 实现高性能Web服务器 ,他 首先看重的是事件机制和异步IO模型的优越性 ,而不是JS。但是他需要选择一种编程语言实现他的想法,这种编程语言不能自带IO功能,并且需要能良好支持事件机制。JS没有自带IO功能,天生就用于处理浏览器中的DOM事件,并且拥有一大群程序员,因此就成为了天然的选择。   如他所愿,NodeJS在服务端活跃起来,出现了大批基于NodeJS的Web服务。而另一方面,NodeJS让前端众如获神器,终于可以让自己的能力覆盖范围跳出浏览器窗口

HTML5+NodeJs实现WebSocket即时通讯

淺唱寂寞╮ 提交于 2020-03-19 09:56:31
  声明:本文为原创文章,如需转载,请注明来源 WAxes ,谢谢!   最近都在学习HTML5,做canvas游戏之类的,发现HTML5中除了canvas这个强大的工具外,还有WebSocket也很值得注意。可以用来做双屏互动游戏,何为双屏互动游戏?就是通过移动端设备来控制PC端网页游戏。这样的话就要用到实时通讯了,而WebSocket无疑是最合适的。WebSocket相较于HTTP来说,有很多的优点,主要表现在WebSocket只建立一个TCP连接,可以主动推送数据到客户端,而且还有更轻量级的协议头,减少数据传送量。所以WebSocket暂时来说是实时通讯的最佳协议了。   至于服务器语言选择nodeJs,一是因为自己是做前端的,对javascript比较熟悉,相比于其他后台语言,自然会更喜欢nodeJs了,二是NodeJs本身事件驱动的方式很擅长与大量客户端保持高并发的连接。所以就选择NodeJs了。   服务器的实现很简单,先装一个nodeJs的模块,叫nodejs-websocket , 直接在nodeJs命令行中敲入:npm install nodejs-websocket回车就可以安装好了,然后就可以开始建立服务器了,因为有了nodejs-websocket模块,所以很多工作都不用我们自己做,直接调用别人封装好的方法就行了:   【服务端代码】

Nodejs网络通讯

本小妞迷上赌 提交于 2020-03-03 00:55:43
Node.js 网络通信 Node 是一个面向网络而生的平台,它具有事件驱动、无阻塞、单线程等特性,具备良好的可伸缩性,使得它十分轻量,适合在分布式网络中扮演各种各样的角色。同时 Node 提供的 API 十分贴合网络,适合用它基础的 API 构建灵活的网络服务。本课程的内容就是给大家介绍 Node 在网络通信编程方面的具体能力。 利用 Node 可以十分方便的搭建网络服务器。在 Web 领域,大多数的编程语言需要专门的 Web 服务器作为容器,如 ASP、ASP.NET 需要 IIS 作为服务器,PHP 需要打在 Apache 或 Nginx 环境等,JSP 需要 Tomcat 服务器等。但对于 Node 而言,只需要几行代码即可构建服务器,无需额外的容器。 Node 提供了 net、dgram、http、https 这4个模块,分别用于处理 TCP、UDP、HTTP、HTTPS,适用于服务器端和客户端。 网络通信相关概念 我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定

windows安装npm教程

一笑奈何 提交于 2020-03-01 08:07:16
windows安装npm教程 1、在使用之前,先类掌握3个东西,明白它们是用来干什么的: npm: nodejs 下的包管理器。 webpack: 它主要用途是通过CommonJS 的语法把所有浏览器端需要发布的静态资源作相应的准备,比如资源的合并和打包。 vue-cli: 用户生成Vue工程模板。(帮你快速开始一个vue的项目,也就是给你一套vue的结构,包含基础的依赖库,只需要npm install 就可以安装。 2、nodejs下载网址: https://nodejs.org/en/ 【如果嫌下载的慢,可以下载其他网站上的,别人有现成的,下载的比较快】 3、下载好后,双击安装: 4、默认,下一步: 5、接受协议: 6、选择安装路径: 7、会默认自己添加环境变量: 8、接下去一路“next”,最后点击finish 9、安装好后,对应的各个文件的作用: 10、cmd打开终端: 11、检查是否正常 12、再看看另外2个目录,npm的本地仓库跑在系统盘c盘的用户目录了(没见到npm-cache是因为没有用过, 一使用缓存目录就生成了),我们试图把这2个目录移动回到D:\nodejs 先如下图建立2个目录: 13、然后运行以下2条命令 npm config set prefix "D:\nodejs\node_global" npm config set cache "D:

Windows10下NPM 和 CNPM安装步骤2020年2月

℡╲_俬逩灬. 提交于 2020-02-29 20:49:01
一、两个工具俗称含义 npm :node package manager 用于管理nodejs包及node插件管理(包括安装、卸载、管理依赖等) cnpm :中国人的npm,或叫节约时间的npm下载 国内淘宝推出了 npm 镜像,这是一个完整的 npmjs.org 镜像,同步频率为15分钟一次,保证与官方服务同步。 二、安装nodejs 下载网址 http://nodejs.cn/download/ 2、下载后,安装,这不用说,如果不知道,估计后面学习也困难,C:\Program Files\nodejs。 3、安装完成后,直接通过资源管理器,创建二个目录,npm下载需要用到D:\Program Files\nodejs\node_global; D:\Program Files\nodejs\node_cache不需要用指令添加,有些有权限设置的window版本不会成功。 4、完成后,用npm install -g npm处理一下,即升级个级,有时会报错。如下处理一下 4、window+R,输入cmd,打开命令提示符口,输入: 二、改变下载环境变量 1、首先配置npm的全局模块的存放路径、cache的路径,此处我选择放在:D:\Program Files\nodejs 输入如下命令: npm config set prefix “C:\Program Files\nodejs

NodeJS学习第一季-文件I/O

痴心易碎 提交于 2020-02-28 21:46:41
1、writeFile函数的基本用法 fs模块提供writeFile函数,可以异步的将数据写入一个文件, 如果文件已经存在则会被替换。 var fs= require("fs"); //文件名, 内容, 回调函数 fs.writeFile('test.txt', 'Hello Node', function (err) { if (err) throw err; console.log('Saved successfully'); //文件被保存 }); 数据参数可以是string或者是Buffer,编码格式参数可选,默认为"utf8",回调函数只有一个参数err。 2、appendFile函数的基本用法 writeFile函数虽然可以写入文件,但是如果文件已经存在,我们只是想添加一部分内容,它就不能满足我们的需求了,很幸运,fs模块中还有appendFile函数,它可以将新的内容追加到已有的文件中,如果文件不存在,则会创建一个新的文件 fs.appendFile('test.txt', 'data to append', function (err) { if (err) throw err; //数据被添加到文件的尾部 console.log('The "data to append" was appended to file!'); }); 3、exists函数的基本用法

nodejs-基本语法

北慕城南 提交于 2020-02-27 11:53:56
初识nodejs-基本语法 nodejs是JavaScript的一个在后端的运行环境,关于nodejs的认识,我们可以看上一篇文章<<初识nodejs>>,我们要使用nodejs,首先要安装nodejs,安装的东西你可理解为java中的运行环境一样,至于怎么安装,我们最好安装nvm(nodejs version manage),安装的过程也写在了另一篇博客<>(那时懵懂期,回头再修改的详细一点) 那么nodejs作为一个后台的平台,他可以为我们提供的很多,我们可以用JavaScript语言进行文件的获取,删除等等文件操作,我们可以用JavaScript开一个本地服务器,我们可以和mongoDB配合来搭建后台,他给我们前端带来了太多的惊喜,让我们深深的迷恋上了它,但正所谓学一个新知识时,我们都需要从简,从基础学起,那么在nodejs环境下,我们的基本语法又是怎样的呢? 模块 nodejs是支持ES6的,所以在这里你可以尽情的去写,不用考虑浏览器不兼容了(这里是后端,哈哈),安装好了nodejs后,我们在终端输入node,就会进入到nodejs环境,这里我们可以输入: console.log("hello world!"); 可以看到我们控制台输出了hello world,我第一次写的时候还以为这是chrome的开发者模式呢,这或许就是chrom v8引擎的作用吧