nodejs理解

1、nodejs介绍html

nodejs主要体如今事件机制和异步IO,nodejs是事件驱动的;node

nodejs做用:js的运行环境、操做文件、连接数据库;mysql

nodejs在执行js是单线程的,但不是nodejs是单线程的;web

能够写一些小工具,聊天室,爬虫sql

检测node是否安装成功: 命令行-node -v 出现node的版本号就是安装成功了数据库

编辑器:仍是推荐vsCodeexpress

2、模块npm

1.模块化json

module.export 导出api

reuqire 导入

module.js
var a=require('./app').a;
console.log(require('./app'))
var c=1+a;
console.log(c)


app.js
var a=1;
module.exports={
    a:a
};

2.事件

events

引入events 建立事件 绑定事件 触发事件

const EventEmitter = require('events');//引入事件
class MyEmitter extends EventEmitter {}//继承事件
const myEmitter = new MyEmitter();//建立类
myEmitter.on('event', () => {//绑定事件
  console.log('触发事件');
});
myEmitter.emit('event');//出发事件

3.读写文件

引入fs

读写文件这里面函数会区分同步和异步

同步是一步一步执行的,按照代码的顺序来的,后面等

异步是会在执行其余的代码,等到代码执行完成以后,在执行回调函数的里面的代码

var fs=require('fs');
fs.writeFile('demo.txt','数据','utf8',function(){
    
})
fs.mkdir(__dirname+'/demo',function(){
    var stream=fs.ReadStream('demo.txt',{highWaterMark:64})
    console.log(stream)
    fs.writeFile(__dirname+'/demo/'+'demo1.txt',stream,function(){
    })
})

4.流

stream

标准输入 标准输出

对http请求的处理也是流,响应流 请求流

全部流均可以作成事件处理

应用:处理数据、提升性能(流能够将大文件数据放到一段一段的buffer中)

管道

pipe

5.web服务器

http

输出txt文本;text/txt

输出json数据;application/json

输出html文件;text/plain; 能够利用管道

6.util 实用工具

nodejs内置的一些api工具

7.http创建服务器

能够经过http模块建一个一个服务器

8.path路径操做

对当前项目一些路径进行操做

9.url

处理和解析获取到的URL

3、资料

官网 :https://nodejs.org/en/

中文官网:http://nodejs.cn/

4、注意

1.node热更新

supervisor

首先须要使用 npm 安装 supervisor(这里须要注意一点,supervisor必须安装到全局)

$ npm install -g supervisor

Linux 或 Mac用户须要使用管理员权限

sudo npm install -g supervisor

安装完成后就能够用supervisor启动服务了(假设你的Node.js程序主入口是app.js)

$ supervisor app.js

命令行窗口会显示启动成功信息,并开始代码监听,当代码被修改以后,运行的脚本会被终止,自动从新启动。

 

PS: express 4.x把用于项目启动的代码移到了./bin/www的文件,如需使用supervisor 启动express项目请使用下面的命令

supervisor bin/www

 2.mysql

(1)、  'Incorrect string value: \'\\xE5\\xBC\\x80\\xE5\\xA7\\x8B...\' for column \'topoData\' at row 1',

由于字段的值中包含中文,可是你设置的字段里面不是utf-8的

相关文章
相关标签/搜索