码迷,mamicode.com
首页 > Web开发 > 详细

node.js介绍

时间:2017-11-12 16:29:12      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:ons   mod   拓展   host   add   perl   版本   使用   读取   

概念:

1、能够运行javascript的服务器

2、用javascript语言编写的后端

3、强大的包管理器npm,可以安装依赖插件


->特性:
1).事件驱动
2).非阻塞I/O模型
3).轻量高效

node.js使用场景(实时聊天、电子商务)
1).高并发/低业务的网络请求
2).应用接口API
3).实时应用


node.js安装和使用
1.官网:参考网站:http://nodejs.cn/

1).初始化项目
npm init (V8.1版本的需要跳过配置npm init -y)
2).添加依赖
npm install packageName --save-dev
3).也可以根据package.json中已经设置好的依赖名字,做全部安装.
npm install

node.js编程基础
1.模块
->使用一个npm安装模块,例如gulp
1).main.js中直接用require来注入.
require()会在node_modules这个文件夹里去找.
2).如果是自定义的模块index.js,则需要按照相对路径来写.
3).导入时可以省略 .js 后缀
->自定义模块
要想把模块暴露出来,需要用关键字exports来暴露API
index.js 想让它暴露出来一个API
exports.goodTeacher = function(){
console.log(‘MR.Wang is a best teacher of the world!‘);
}
2.node.js的文件系统(fs),是一个系统的依赖.
1.导入文件系统fs依赖
var fs = require(‘fs‘);
2.读取
// 同步读取
var data = fs.readFileSync(‘data.txt‘);
// 打印出来,原生是buffer数据,需要转码
console.log(data.toString());
console.log(‘结束‘);
3.node.js的回调函数
->node.js的异步编程的直接体现就是回调函数.
// 异步读取
// 异步读取
var time = new Date();
fs.readFile(‘data.txt‘, function (err,data) {
console.log(data.toString());
console.log(‘读取本地文件耗时:‘ + (new Date() - time)+‘毫秒‘);
});
console.log(‘完毕‘);
4.readFile()// 读取文件
->fs.readFile(path,[option],callback)
->callback函数有两个参数function(err,data){}
1).err是读取文件失败后出发的错误对象
2).data是从文件中读取的数据.

5.writeFile()// 写入文件
->fs.writeFile(path,data,[option],callback)
var str = ‘此情此景,我想吟诗一首!‘
fs.writeFile(‘data1.txt‘, str, function (err) {
if (err) {
throw err;
}
console.log(‘写入成功!‘);
});
->默认的第三个参数是{flag=‘w‘},是写的操作.会清空掉文件.如果想要追加内容,可以设置{flag=‘a‘}
fs.writeFile(‘data1.txt‘, str,{flag:‘a‘}, function (err) {
if (err) {
throw err;
}
console.log(‘写入成功!‘);
});
->{flag:‘w‘}为默认值,w代表写文件,a代表追加内容,r代表读取文件.
6.创建目录
fs.mkdir(path,[mode],callback)// 创建目录
->path是需要创建的目录
->[mode]是目录权限(默认0777)
->callback是回调函数
7.删除目录
fs.rmdir(path,callback);// 但是只能删除空目录
8.读取目录
fs.readdir(path,callback);// 读取文件目录
->回调函数里有两个参数,function(err,files){}
->err表示读取失败触发的错误对象.
->files表示读取的文件目录,是一个数组.

3.http模块
->提供web服务的一个模块,是系统内置的服务
->手写一个http服务
->引入http模块
var http = require(‘http‘);
->创建一个服务
http.createServer(function(req,res){
res.writeHead(200,{‘Content-Type‘:‘text/html‘});
res.write(‘<head><meta charset="utf-8"></head>‘)

res.write(‘hello world‘);
res.end(‘goodBye‘);

}).listen(8888);
console.log(‘sever success‘);
->浏览器地址栏输入:localhost:8888或者127.0.0.1:8888


拓展:
服务端:
->服务器:
1).就是一台电脑,用来提供其他客户机的服务请求.
2).软件服务器:DNS服务器,Web服务器,数据库服务器,FTP服务器,SMTP/POP3服务器
->服务器的操作系统
windows server/Linux(Ubuntu/centos/红旗/麒麟)/Unix
->服务器的服务环境:
Apache/Tomcat/IIS
LMAP(Linux+Apache+Mysql/MariaDB+Perl/PHP/Python)

node.js介绍

标签:ons   mod   拓展   host   add   perl   版本   使用   读取   

原文地址:http://www.cnblogs.com/zhaodagang8/p/7821719.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!