【node开发】node.js在项目中使用的常见语法

发布时间 2023-06-12 14:53:53作者: JeckHui
node.js在项目中使用的常见语法

// Process模块
// 内置模块,直接使用
const process = require('process');

// 获取终端输入的参数
const args = process.argv.slice(2);

// 获取全局变量
const data = process.env.VUE_APP_BASE_URL

// 返回当前系统信息
const system = process.platform


// path模块
// 内置模块,直接使用
const path = require('path');

// path.join 作用是将传入的多个路径拼成一个完整的路径
const dPath = path.join('template', 'aaa', 'bbb', 'ccc', 'd.js');
// 输出: template/aaa/bbb/ccc/d.js

// path.resovle 和 path.join 的区别在于它的作用是将传入的多个路径和当前执行路径拼接成一个完整的绝对路径
const cPath = path.resolve('aaa', 'bbb', 'ccc', 'd.js');
// 输出:  /Users/xiaolian/Code/node-api-test/aaa/bbb/ccc/d.js

// path.basename 返回指定 path 最后一个路径名,其中第二个参数 ext 可选,表示文件扩展名
console.log(path.basename('scripts/index.js'));  // index.js
console.log(path.basename('scripts/index.js', '.js'));  // 匹配到 .js,返回 index
console.log(path.basename('scripts/index.js', '.json'));  // 没匹配到,返回 index.js


// 返回指定 path 最后一个路径名之前的路径。比如
console.log(path.dirname('scripts/index.js'));  // scripts
console.log(path.dirname('scripts/hook/index.js'));  // scripts/hook


// 获取文件后缀
console.log(path.extname('scripts/index.js'));  // .js
console.log(path.extname('README.md'));  // .md




// 文件系统
// 内置模块,直接使用
const fs = require('fs');

// 回一个文件或者目录的信息
fs.stat('./icons.js', function(err, stats) {
  console.log(stats);
});


// 获取 path 目录下的文件和目录
fs.readdir('./src', function (error, files) {
  if (!error) {
    console.log(files);
  }
});

// 读取文件内容 
// process.cwd()  根目录url
fs.readFile(path.join(process.cwd(), 'package.json'), 'utf-8', function (
  error,
  content
) {
  if (!error) {
    console.log(content);
  }
});

// 写入文件
const  arr = `[
    {
        id:1,
        label:'我是第一个来的'
    },
    {
        id:2,
        label:'我是第二个来的'
    }
]`
fs.writeFile(
  path.join(process.cwd(), 'text.json'),arr,
  function (error, content) {
    console.log(error);
  }
);