Node小知识

1.前端、后端都是干什么的?

前端:HTML,CSS,Javascript
后端:服务端+数据库
服务端: java php .net python node(是一门技术,不是语言,核心语法是ECMAScript)
数据库: 
前端 + 后端  前端是可以和任意的一个服务端语言,任意的一门数据库进行搭配
前端 + java + mysql
前端 + php + mysql
前端 + .net + sqlserver
前端 + node + MongoDB
前端:做静态资源
后端:操作服务器硬件

2.为什么要学习node?

  • 就业有市场
  • ECMAScript进行开发:省时,省力

3.什么是JavaScript?

一门脚本语言 需要嵌入在html中执行的
BOM + DOM (浏览器接口) + ECMAScript(标准) = JavaScript
BOM + DOM + XXXScript = 新的语言
BOM + DOM + ActionScript = flash

4.浏览器中的JavaScript可以做什么

校验表单 , 操作DOM

5.浏览器中的JavaScript不可以做什么

操作服务器硬件的

6.浏览器和JavaScript是什么关系?

电脑只会去认识二进制编码 01010101,浏览器是去解析JavaScript,对JavaScript进行编译

JavaScript是什么样的语言

弱类型,解释型
编译型:常见的编译型的语言有哪些
解释型的语言:  python , JavaScript
编译型 : c c++ 

7.JavaScript只能运行在浏览器中么

node 可以运行在服务端

node 就是一个壳子,把谷歌浏览器的js解析引擎拿过来放到了服务器中

不需要去考虑兼容性的问题
事件驱动,无阻塞的IO模型

node是门技术,不是一门新的语言
2009年5月份 正式对外宣布了nodejs的最初版本

安装

官网下载对应的安装包即可
windows+r 进入运行面板 输入cmd进入cmd面板
输入node chrome浏览器的console相同  repl(交互式运行环境)***
退出repl交互式运行环境  ctrl+c 两下
node-v  查看node的版本号

node的cmd面板命令

  1. 命令 node + 文件的路径node C:\Users\John\Desktop\node01\02.js
  2. 切换到当前的cmd目录(在当前文件夹中按住shift键,鼠标右键) + 文件名

引入一个模块,模块名叫fs(file sys)

var fs = require(“fs”); //require 是一个全局函数

fs这个模块在 node的安装目录C:\Program Files\nodejs\node_modules中

异步读文件
fs.readFile(文件的路径,[编码格式,]回调函数) //读文件的函数

fs.readFile("./remind.txt",function(err,data){
	console.log(data.toString());  //如果没有加上编码格式的出来的是一串buffer
})

同步读文件

var data = fs.readFileSync("./remind.txt","utf8");
console.log(data);

fs.readFile("./02.js","utf8",function(err,data){
console.log(data.toString());
}) 

搭建服务器
前端代码 + 后端代码(服务器语言+数据库)
java tomcat服务器
php apache服务器

注意:node服务器自己手写

1.引入http模块
var http = require(“http”);
2.创建一个服务

http.createServer(function(req,res){   //传入一个回调函数,req请求,res响应
// 设置响应头
res.writeHead(200,{"content-type" : "text/html;charset=utf8"})  //200表示成功
res.end("这是一个服务器");    //响应结束
// 修改了服务端代码,一定要重启服务器
// 上一个服务结束 ctrl+c停止服务运行

// res.writeHead(200,{"content-type" : "image/jpeg"})   图片的响应 
// res.writeHead(200,{"content-type" : "image/png"})   图片的响应
// res.writeHead(200,{"content-type" : "text/javascript;charset=utf8"})  JavaScript文本响应
}).listen(3000);

路由配置

	var http = require("http");  //引入http的模块
	var fs = require("fs");  //引入文件系统的模块
	var server = http.createServer();   //创建一个服务器

	//服务去监听request事件,回调函数中方的是request请求,response响应
	server.on("request",function(request,response){
	// response.end("123")
	// fs.readFile("./index.html","utf8",function(err,data){
	// 	response.end(data);
	// })
	// 进行路由的配置
	// console.log(request.url);  //路由

	if(request.url == "/index.html" && request.method == "GET"){
		fs.readFile("./index.html","utf8",function(err,data){
			response.end(data);
		})
	}else if(request.url == "/login.html" && request.method == "GET"){
		fs.readFile("./login.html","utf8",function(err,data){
			response.end(data);
		})
	}

	// 192.168.2.100    局域网的ip
	// 127.0.0.7     本机
	// localhost     本机
	// })
	server.listen(3000);

node小知识,欢迎大家互相学习!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值