为何咱们要学习Node.js?php
Node.js文件的运行?css
Node.js文件的实时监听改动html
Node.js版本前端
Node.js的模块化问题vue
const fs = require('fs') // Common.js 模块引入方式 /* * fs 是一个对象 * 定义的fs 其实拿的是一个地址,地址咱们但愿是稳定不变的,因此const */ // fs.readFileSync // 同步读 // fs.readFile // 异步读
/* * 相似插件 * 咱们如今想在咱们的当前文件中引入带有功能的插件 * 前端第三方模块所有都在一个网站中: www.npmjs.com * 使用 * 1. 安装【 npm/cnpm/yarn 】 * 2. cnpm i request -S/-D * -S 生产环境 * -D 开发环境 * * 问题: 这里是否存在跨域? * 不存在 Node.js是运行在服务端的,不是浏览器端,没有同源策略 * ! 总结 ! 第三方模块使用? 未来别人项目中使用了你没有用过的东西,怎么办? ! 1. npm.js 查阅文档 ! 2. 先写单案例测试 ! 3. 记录使用文档,记录本身博客中 */ const request = require('request') request('https://m.lagou.com/listmore.json', function (error, response, body) { console.log('error:', error); console.log('statusCode:', response && response.statusCode); console.log('body:', body); });
/* * 自定义模块 * 本身建立模块,本身使用 * 类型: * 1. 函数 * 2. 对象 * 3. 字符串 */ // 1. 定义模块 const people = { name: '西阁', sex: 'man', age: 18 } // 2. 导出模块 module.exports = people
// 3. 自定义模块导入 const people = require('./3-自定义模块定义.js') console.log('people.name:', people.name )
JSON.stringify / JSON.parsejava
const fs = require('fs') const data = fs.readFileSync('./data.json','utf8')//字符串 const newData = JSON.parse( data )//将JSON字符串转为一个对象 const newStr = JSON.stringify( newData )//将 JavaScript 对象转换为 JSON 字符串 const state = { msg: '千锋教育', obj: { x: 1, y: 2 } } // 深拷贝 -> 1. 递归 2. JSON序列化实现 const newState = JSON.parse(JSON.stringify( state )) newState.msg = " hello Node.js " console.log('state',state) console.log('newState',newState)
querystring 内置模块node
/* ! querystring - 应用场景: 处理url查找字符串 ! 1. querystring.parse string -> object ! 2. querystring.stringify object -> string ! 3. querystring.escape 中文转码 ! 4. querystring.unescape 中文解码 */ const qs = require('querystring') const url = require('url') // console.log("西阁: qs", qs) // ! 1. parse const str = 'https://detail.tmall.com/item.htm?spm=a230r.1.14.6.7a344d82XrCvx0&id=604098442154&cm_id=140105335569ed55e27b&abbucket=2' const newObj = qs.parse(url.parse( str ).query,'&','=') // console.log("西阁: newObj", newObj) /* { spm: 'a230r.1.14.6.7a344d82XrCvx0', id: '604098442154', cm_id: '140105335569ed55e27b', abbucket: '2' } */ // ! 2. stringify const newStr = qs.stringify( newObj ) // console.log("西阁: newStr", newStr) // ! 3. escape const str1 = 'city=北京' const city = qs.escape( str1 ) console.log("西阁: city", city) // city%3D%E5%8C%97%E4%BA%AC // !4. unescape const cityCape = qs.unescape( city ) console.log("西阁: cityCape", cityCape)
pathpython
const path = require('path') console.log("西阁: path", path) // console.log( __dirname ) // 全局变量 /* e:\1911\1-Node.js\day01\code\5-内置模块 */ // const pathUrl = path.join( __dirname, 'aa') const pathUrl = path.resolve( __dirname, 'aa') console.log("西阁: pathUrl", pathUrl)