node基本介绍及使用

1.什么是node

简单的说node.js就是运行在服务端的JavaScript

官网地址:http://nodejs.cn/

2.node安装

2.1下载node

node下载:https://nodejs.org/en/download/

2.2命令行测试

node -v

3.快速入门

3.1控制台输出

创建demo1.js

var a = 1;
var b = 2;
console.log(a+b);

cmd中输入

node demo1.js	//结果为3

3.2使用函数

创建demo2.js

//使用函数
var c = add(100,200);
console.log(c);

function add(a,b){
	return a+b;
}

cmd中输入

node demo2.js	//结果为300

3.3模块化编程

创建demo3_1.js

//被调用的模块
exports.add = function(a,b){
	return a+b;
}

创建demo3_2.js

//调用模块
var demo = require("./demo3_1")
console.log(demo.add(200,300));

cmd中输入

node demo3_2.js	//结果为500

3.4创建web服务器

参考node中文文档:http://nodejs.cn/api/

创建demo4.js

//创建web服务器
//http为node内置的web模块
var http = require("http")
//创建服务
http.createServer(function(request,response){
	// 发送 HTTP 头部 
    // HTTP 状态值: 200 : OK
    // 内容类型: text/plain
	const body = 'hello world';
	response.writeHead(200,{
		'Content-Type': 'text/plain'
	});
	// 发送响应数据 "Hello World"
	response.end(body);
})
.listen(8888);	//监听8888端口

cmd中输入

node demo4.js

服务启动后,输入网站:http://localhost:8888 网页结果:"hello world" 按ctrl+c终止运行

3.5服务端渲染

创建demo5.js

//理解服务端渲染,循环输出hello world  10次
//客服端渲染可以看到for循环源码,而服务端渲染只能看到for循环的10次hello world结果
var http = require('http');
http.createServer(function (request, response) {
    // 发送 HTTP 头部 
    // HTTP 状态值: 200 : OK
    // 内容类型: text/plain
    response.writeHead(200, {'Content-Type': 'text/plain'});
    // 发送响应数据 "Hello World"
	for(var i=0;i<10;i++){
		//write方法可以多次调用
		response.write('Hello World
');
	}
	//end方法只能调用一次,表示消息结束
	response.end('');	
}).listen(8888);

cmd中输入

node demo5.js

服务启动后,输入网站:http://localhost:8888 网页结果:10条"hello world"字符 按ctrl+c终止运行

右键“查看源代码”,并没有发现for循环语句,而是10条hello world,说明这个循环时在服务端完成的,而非客户端完成。这与jsp很相似。

3.6接受参数

创建demo6.js

//接受参数
var http = require('http');
//引入url模块,解析url
var url = require('url');
http.createServer(function(request, response){
	//响应设置头信息
    response.writeHead(200, {'Content-Type': 'text/plain'});
    // 解析 url 参数,参考nodejs的api文档
    var params = url.parse(request.url, true).query;
    response.write("name:" + params.name);
    response.write("
");
    response.end();
}).listen(8888);

cmd中输入

node demo6.js

服务启动后,输入网站:http://localhost:8888/?name=abc 网页结果:"name:abc" 按ctrl+c终止运行

原文地址:https://www.cnblogs.com/itzlg/p/11854257.html