0%

node学习笔记

Node初步学习(后端入门)

基础入门

  1. node安装

  2. node运行js文件

  3. 寻找包的时候先去node_modules,如果没有,在上一级寻找node_modules,直到根目录

  4. const math = require(math)

  5. buffer

    var str = "hello";
    var buf = Buffer.from(str);
    console.log(buf.length) //汉字算2(内存大小)
    console.log(str.length) //汉字英文都算1

    var buf2 = Buffer.alloc(10) //创建10字节大小的Buffer
    buf2[0] = 88
    console.log(bur2[0].toString(2)) //输出二进制
    //一单创建无法更改长度


    var buf3 = Buffer.allocUnsafe(10) //不清空内存,可能包含敏感数据

    模块使用之fs

    var fs = require('fs')
    // 写文件
    fs.writeFile(path,data,function(err){

    })
    // 读文件
    fs.readFile(path,function(err,data){

    })

模块使用之http

基本使用方法

var http = require('http')
var server = http.createServer()
// 绑定事件
server.on('request',funtion(req,res){
// 根据不同路径返回不同response
if (url = '/index'){
console.log(res.url)
// 需要end结束,不太常用
res.write('hello')
res.end
// 一般不用write
res.end('hhh') // 只能是字符串,可以用json. stringify()
}

})
// 绑定端口号,启动服务器
server.listen()

关于content-type

res.setHeader('Content-Type','text/plain;charset-utf-8')
具体类型可参照此处链接

引用自己的模块

// 自制模块,需要用到exports对象,设定不同的属性值达到跨文件引用变量目的
exports.name = 'Doge'
// 引用模块
var myModule = require('./a.js') // 后缀可以省略
console.log(a.name) // 输出Dog

代码风格

  1. JavaScript Style要求tab两个空格
  2. 一般结尾不加; 某些特殊情况要加(很不常见)

模板引擎

art-template
npm install art-template
暂时跳过

渲染模式

  • 服务端渲染(服务端使用模板引擎)
    SEO优化
  • 客户端渲染
    请求更快,但不利于SEO

静态资源案例

var http = require('http')
var fs = require('fs')

http //简写方式,默认绑定request
.creatServer(function(req,res){
res.end('hello')
})
.listen(3000,function(){
console.log('runing')
})