nodejs的API使用

50 阅读1分钟

FS文件系统

fs.readFile()

异步读取文件

fs.readFile('/etc/passwd', (err, data) => {
  if (err) throw err;
  console.log(data);
});

fs.createReadStream()

与用于可读流的 16 kb 的默认的 highWaterMark 不同,此方法返回的流具有 64 kb 的默认的 highWaterMark

const fs = require('fs');
// 从某个字符设备创建一个流。
const stream = fs.createReadStream('/dev/input/event0');
setTimeout(() => {
  stream.close(); // 这可能不会关闭流。
  // 人工标记流的结束,就像底层的资源自身已表明文件的结束一样,允许流进行关闭。
  // 这不会取消挂起中的读取操作,如果存在此类操作,则过程可能仍无法成功地退出,直到完成。
  stream.push(null);
  stream.read(0);
}, 100);

path路径

path.extname()

返回 path 的扩展名,从最后一次出现 .(句点)字符到 path 最后一部分的字符串结束。除了第一个字符以外没有 .,则返回空字符串。

path.extname('index.html');
// 返回: '.html'

path.extname('index');
// 返回: ''

path.join()

使用平台特定的分隔符作为定界符将所有给定的 path 片段连接在一起,然后规范化生成的路径。

path.join(__dirname,'/img/so')

__dirname: 当前项目的根目录

path.resolve()

将路径或路径片段的序列解析为绝对路径。

path.resolve('./index.html')
//返回 D:\serverProjects\node_koa\index.html

path.resolve('/foo/bar', './baz');
// 返回: '/foo/bar/baz'

path.resolve('/foo/bar', '/tmp/file/');
// 返回: '/tmp/file'

path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif');
// 如果当前工作目录是 /home/myself/node,
// 则返回 '/home/myself/node/wwwroot/static_files/gif/image.gif'