Node js 就是运行在服务端的JavaScript,可以读写本地文件,可以操作数据库。 是基于Chrome V8 引擎的JavaScript 运行环境,简单理解就是可以让JavaScript脱离浏览器,执行的平台,并对JavaScript功能进行了增强。
与JavaScript的区别:Node.js 是运行环境,
Node.js 运行使用
-
读取 - 读取用户输入,解析输入的 Javascript 数据结构并存储在内存中。
-
执行 - 执行输入的数据结构
-
打印 - 输出结果
-
循环 - 循环操作以上步骤直到用户两次按下 ctrl-c 按钮退出。
-
运行JS文件:
node XXX.js
npm和package.json文件
npm:
-
允许用户从NPM服务器下载别人编写的第三方包到本地使用。
-
允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
-
新版的nodejs已经集成了npm,可以通过输入 "npm -v" 来测试是否成功安装
package.json:以JSON格式描述nodejs项目的包描述文件,创建语法:npm init
或 npm init -y
(默认全部yes)
安装源:
查看安装源:npm config get registry
把下载源该为淘宝: npm config set registry http://registry.npm.taobao.org
默认文件夹的解释:
package.lock.json 缓存地址
node_modules (依赖)包的下载地址
package.json 项目配置文件:
dependencies 项目需要的依赖(项目需要的插件)
scripts 项目有哪些命令
devDependencies 开发时需要的依赖
npm的不同安装方式(与简写):
指定版本安装 npm i jquery@2.1
全局安装 npm i js-cookie -g
查看全局安装目录 npm root view -g
开发依赖
npm i <pkg> --save-dev
npm i less -D
产品依赖(默认)
npm i <pkg> --save
npm i jquery -S
注:
卸载 npm uninstall <pkg>
npm r <pkg>
更新版本:npm update
帮助命令:npm install -h 安装帮助
npm uninstall -h 删除帮助
版本号:
2.1.4 X.Y.Z
X 大版本 不兼容的更新
Y 中版本 有新增的内容 原项目还兼容
Z 小版本 解决了一些小bug
^3.6.0 更新就不能>=4.xxx版本 锁定版本
3.6.0 不能更新 固定版本
Node js 操作mysql
模块(插件) 的用法:
安装模块:npm iaxios -S
导入模块:var axios = requitre("axios")
使用模块:axios.get(url)
.then(res=>res.data})
.catch(err=>err)
自定义模块(一个文件就是一个模块):
定义模块 utils.js
module.exports = {
max:function(a,b){return a}
min:(a,b)=>b
}
导入模块:
const utils = require("./utils")
utils.max(15,20)
使用模块:
var {max,min} = require("./utils.js")
min(5,20)
fs文件处理:
导入文件模块:var fs require('fs')
读取:var re fs.readyFileSync(url,"utf-8")
fs.readyFile(url,"utf-8",function(err,data){})
写入:fs.writeFileSync(url,data)
fs.writeFile(url,data,function(e))
http服务器:
导入:var http = requite("http")
var url = require("url")
创建服务器:
var server = http.createServer(function(req,res){
var Url = url.parse(req,url);//解析url
res.status = 200;//设置状态码
res.status.setHeader("Content-Type","application/json")
res.end(`{}`)
})
监听并启动:
sever.listen("8888",function(){
console.log("服务器启动成功")
})
mysql
配置环境变量 :C:\Program Files\MySQL\MySQL Server 5.7\bin
初始化 :mysqld -install (mysqld --initialize)
启动服务器 :net start mysql
登陆(文件.err 内的原始密码) :mysql -u root -p
修改密码:alter user 'root'@'localhost' identified by '123456';
sql在nodejs中使用
安装 nodejs :npm i mysql -S
导入:var mysql = requie("mysql")
创建连接:
var con = mysql.createConnect({
host:"localhost",
user:"root",|
password:"123456",
database:"feedback"
})
连接:
con.connect(function(err){
if(!err){console.log("连接数据库成功")}
})
执行sql:
var sql = `select * from user where 1`
con.query(sql,function(err,result){
//err 错误信息
//result 执行结果
})
断开sql:
con.end(function(err){
if(!err){console.log("断开成功")}
})