巧妇难为无米之炊.要学习node.js,当然必须先有node.js环境(可以去官网 http://nodejs.cn/ 下载安装),如果还是不懂怎么配置开发环境,度娘会告诉你一切. 安装完成环境之后,先别急着开发.在开发之前,为了更清晰的掌握接下来我们的第一个应用的代码逻辑,我们还需要了解一下node.js 应用的基本组成成分,如下: 1. 引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块. 2. 创建服务器:服务器可以监听客户端的请求,类似于 Apa…
Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- 简介及安装Node.js开发环境 Nodejs学习笔记(二)--- 事件模块 Nodejs学习笔记(三)--- 模块 Nodejs学习笔记(四)--- 与MySQL交互(felixge/node-mysql) Nodejs学习笔记(五)--- Express安装入门与模版引擎ejs Nodejs学习笔记(六)--- Node.js + Express 构建网站预备知识 Nodejs学习笔记(七)--- Node.js + Exp…
Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Node环境中,一个.js文件就称之为一个模块(module). 好处是大大提高了代码的可维护性. 其次,编写代码不必从零开始.当一个模块编写完毕,就可以被其他地方引用.我们在编写程序的时候,也经常引用其他模块,包括Node内置的模块和来自第三方的模块. 使用模块还可以避免函数名和变量名冲突.相同名字的…
写作背景 笔者前年开始撰写的<Node.js学习笔记> github star 数突破了1000,算是个里程碑吧. 从第一次提交(2016.11.03)到现在,1年半过去了.突然有些感慨,想要写点东西,谈谈这期间的收获.心路历程,以及如何学习Node.js. 心路历程 笔者一直有做技术笔记的习惯,前几年零零散散的也写了不少Node.js的东西,只不过都存在evernote里.写着写着,觉得有必要系统地整理下,于是就有了这个项目. 粗略统计了下,总共提交了约60篇教程,以及将近300个范例脚本.…
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@latest获得最近的稳定版本,如下 npm install npm@5.5.0 -g NPM初始化及包管理 npm init -y -y 可以跳过所有的询问,执行后目录下会生成package.json文件来存储一些配置,诸如项目的依赖.自定义脚本等. 现在我们可以使用install命令来安装需要用…
Node.js学习笔记(1):Node.js快速开始 Node.js的安装 下载 官方网址:https://nodejs.org/en/ 说明: 在Windows上安装时务必选择全部组件,包括勾选Add to Path 查看安装版本 安装完成后,输入node -v 可查看当前安装的Node版本. NPM NPM是什么 npm是Node.js的包管理工具(package manager) 因为我们在Node.js上开发时,会用到很多别人写的JavaScript代码.如果我们要使用别人写的某个包,每…
Node.js学习笔记(4):Yarn简明教程. 引入Yarn NPM是常用的包管理工具,现在我们引入是新一代的包管理工具Yarn.其具有快速.安全.可靠的特点. 安装方式 使用npm工具安装yarn. Yarn常用操作 初始化新项目 yarn init 添加依赖包 yarn add [package] yarn add [package]@[version] yarn add [package]@[tag] 将依赖项添加到不同依赖项类别 分别添加到 devDependencies.peerDe…
1. Nodejs 的单线程 非阻塞 I/O 事件驱动在 Java. PHP 或者.net 等服务器端语言中,会为每一个客户端连接创建一个新的线程.而每个线程需要耗费大约 2MB 内存.也就是说,理论上,一个 8GB 内存的服务器可以同时连接的最大用户数为 4000 个左右.要让 Web 应用程序支持更多的用户,就需要增加服务器的数量,而 Web 应用程序的硬件成本当然就上升了.Node.js 不为每个客户连接创建一个新的线程, 而仅仅使用一个线程.当有用户连接了,就触发一个内部事件,通过非阻塞…
Linux内核分析第六周学习笔记--分析Linux内核创建一个新进程的过程 zl + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的两种虚拟机制:虚拟处理器,虚拟内存 任务队列:链表每一项都是进程描述符结构. 进程描述符描述内容:打开的文件,进程地址空间,挂起信号,进程状态 Linux通过slab分配器分配task_struct结构,达到对象复用和缓存着色. 进程标识值:内核通过唯一的PID来标识每个进…
前提是搭建好了环境,node,npm,express:(推荐全局安装) 开始用express创建一个基础工程: express –t ejs microblog 进入文件夹之后 npm-install(自动安装好要用的依赖) 这个时候,用浏览器访问localhost:3000,就可以出来一个欢迎界面了,这里简单说下原理:当你在浏览器输入这个地址砸下回车的瞬间,node搭建的一个网站后台程序开始工作,在app.js这个文件里面,有app.get(‘/’, routes.index);这一句话的作用…
一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.js 的包管理器 npm,是全球最大的开源库生态系统. 能方便地搭建响应速度快.易于扩展的网络应用,Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用. 官网:https://nodejs.org/en/中文:https://cnode…
在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性. 这里列出的所有变量均可以在所有模块中访问.但值得注意的是:它们有些并不是在全局作用域内的,即不在global对象内,而是在模块作用域内的.在模块作用域内的变量会用*表示. global 全局对象,全局变量的宿主 *__filename 表示当前正在执行的脚本的文件名.它将输出文件所在位置的绝对路径,且…
一.Node.js创建第一个应用 如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器, 来处理客户端的请求相应.不过对 Node.js 来说,概念完全不一样了.使用 Node.js 时,我们不仅仅在实现一个应用,同时还实现了整个 HTTP 服务器. 1.引入 http 模块 var http = require("http"); 2.创建服务器 接下来我们使用 http.createServer() 方法创建服务器,并使用 listen…
今天来简单的记录一下Node.js的安装配置以及简单的入门 一.Node.js的安装 1.windows下的安装 windows下的安装很简单,只需要去官网http://nodejs.org中,找到window下的安装包,然后直接下一步即可 此种方法完成后,默认安装npm管理器,目录结构如图: 2.Linux下的安装 关于Linux下的安装,具体本人也没有试过,现只粗略的记录一下  Linux发行版 命令 Debian/Ubuntu apt-get install node.js Fedora/…
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js' package ecosystem, npm, is the largest ecosystem of open…
2017-05-01 安装node 我没安装,下载即使用.要全局使用的话把node加入到环境变量中即可. 以下命令环境均为 cmd . 体验 体验一: 在命令行输入 node ,即进入 node 程序. 再输入 console.log(1) ,回车,可以输出 1 .感觉就像浏览器控制台一样. 按两次 ctrl+c 退出node程序. 体验二: 创建文件 t1.js ,内容为 console.log(1) . 在控制台输入 node t1.js ,回车,可以输出 1 .感觉像浏览器执行了js文件一…
要理解事件循环,首先要理解事件驱动编程(Event Driven Programming).它出现在1960年.如今,事件驱动编程在UI编程中大量使用.JavaScript的一个主要用途是与DOM交互,所以使用基于事件的API是很自然的.简单地定义:事件驱动编程通过事件或状态的变化来进行应用程序的流程控制.一般通过事件监听实现,一旦事件被检测到(即状态改变)则调用相应的回调函数.听起来很熟悉?其实这就是node.js事件循环的基本工作原理.如果你熟悉客户端JavaScript的开发,想一想那些.…
Node.js 一.Node.js 简介  简单的说 Node.js 就是运行在服务端的可以解析并运行 JavaScript 脚本的软件. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 二.Node.js 的特点 1. 单线程 :不同于 Apache 服务器的多线程处理请求特点,这也决定了它可以已极低的内…
说明:本人是node.js的初学者,尝试向别人解释这是怎么回事是自我学习的一个好方法.如果你发现有些地方并不是那么正确,欢迎提出来让我知道以便修正,共同进步,谢过^_^.       欢迎交流,本人微博:http://weibo.com/bitsea  很多地方都涉及到函数的回调,在这里简单说一下什么是函数的回调. 回调函数就是回来再调用的函数. 基于js的单线程执行代码的风格,回调是必须的选择.也可以说是一种不得已而为之的选择吧,回调无疑增加了代码的复杂性,使其变得难读.难理解,难维护.但是,…
一.     安装以及环境配置 安装路径 http://nodejs.cn/download/ 多种环境选择 环境变量的配置 Step1 先检查环境变量中的系统变量里面的path,查看是否加入了node.js 例如我的node.js安装路径是C:\Program Files\nodejs 那么,这个path里面就应该加入C:\Program Files\nodejs\ Step2 新建node_global以及node_cache放全局module Npm config set prefix “…
1.回调函数 node是一个异步事件驱动的平台,所以在代码中我们经常需要使用回调函数. 例: setTimeout(function(){ console.log('callback is called'); },2000); 2.标准回调函数 node.js中回调函数格式是约定俗成的,它有两个参数,第一个参数为err,第二个参数为data,err是错误信息,data则是返回的数据. 例: function(err,data){ } 3.获取和使用模块 为了支持快速开发,node平台上提供了大量…
时间:2016-07-07 提前安装好linux CentOs环境,以及相关工具(git,wget,vim……) 1.安装: 目前打算在CentOs上进行操作,网上有教程是旧的地址,这个是搬家后的新地址: wget https://nodejs.org/dist/v4.4.7/node-v4.4.7-linux-x64.tar.xz xz -d node-v4.4.7-linux-x64.tar.xz tar -xvf node-v4.4.7-linux-x64.tar 解压之后开始安装: cd…
Node是用c++语言开发,能运行javascript语言的环境. 使用的时候格式为node helloworld.js,helloword.js为服务器端或者系统级端的javascript代码. Node有很多特性,这里不再一一展开.先用node创建一个http服务器监听固定端口: var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'te…
       一.开始使用Node.js编程           1.hello world           好了,让我们开始实现第一个 Node.js 程序吧.打开你常用的文本编辑器,在其中输入:   console.log('Hello World');         将文件保存为 helloworld.js,打开终端,进入 helloworld.js 所在的目录,执行以下命令:   node helloworld.js         如果一切正常,你将会在终端中看到输出  Hell…
最近接了一个node项目,虽然最后顺利完成了,但是由于第一次实战,整个过程是赶出来的,许多地方一知半解.现在项目结束了,就静下心来系统地学一学,理一理,读书不忘拿笔,既然读书了,当然就要记点东西.一方面:能帮助自己加深印象,更好的理解,另一方面:能有幸帮助到别人也是不甚欢喜的.本人大部分的学习内容来自于以下书籍. <Node入门> <Node.js开发指南> <深入浅出Node.js> <七天学会NodeJS> Node.js简介 Node.js不是JS应用…
一.什么是node.js 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 二.node.js优缺点 优点:1.采用事件驱动.异步编程,为网络服务而设计. 2.Node.js非阻塞模式的IO处理给Node.js带来在相对低系统资源耗用下的高…
这个算是不算完结的完结吧,前段时间也是看了好久的Node相关的东西,总想着去整理一下,可是当时也没有时间: 现在看来在整理的话,就有些混乱,自己也懒了,就没在整理,只是简单的记录一下 一.demo的简单介绍 这次demo,只涉及到简单的curd操作,用到的数据库是mongo,所以要安装mongo数据库,数据库连接驱动是mongoose: 当然关于mongo的驱动有很多,比如mongous mongoskin等:(详见http://cnodejs.org/topic/4f4ca8e0940ce2e…
近期在看一些Node.js的知识,看完后觉得,一些前面的东西忘记了,于是整理一下,方便自己查阅,也希望对学习Node.js的朋友有些帮助: 当然以下只是我个人的观点和理解,不喜勿喷,也望大神指教. 一.Node.js是什么 关于这个问题,刚看到它的时候,可能觉得和javascript有关系,没错,确实有关系:但是,首先Node.js不是一门语言,与php python perl ruby的 “既是语言又是平台”不同:Node.js也不是一个javascript框架或者javascript类库,不…
1. Node.js 创建的第一个应用 1.引入http模块 var http = require("http"); 2. 创建服务器接下来我们使用 http.createServer() 方法创建服务器,并使用 listen 方法绑定 8888 端口.函数通过 request, response 参数来接收和响应数据. //1.引入 http 模块 var http=require('http'); //2.用 http 模块创建服务 http.createServer(functi…
刚接触node.js,对前端的一些东西还不是很清楚,据说Gulp这东西很强大,先来看看从网上抄的一段关于自动化构建的描述: 在为数众多的中小型软件作坊中,不存在自动化构建和发布工具.构建.交付准备环境.代码发布全由手工完成,同样还有运行测试.备份旧版本.新版本打标签以及许多其他重复的事情.毕竟你可能认为这全是非常简单的工作,集成开发环境通过按钮或快捷键就可构建项目,你开启两个窗口拖放少许文件或文件夹即可完成网站发布.但当你在维护代码库和应用时所有这些事情加在一起,这里几分钟,那里几分钟,最终会浪…