如何写一个更的代理console.log方法?

11 min read

可以使用以下方法代理console.log:

const originalLog = console.log;
console.log = function() {
  // 给log传递给参数,例如:
  // const args = Array.from(arguments).map(arg => typeof arg === 'object' ? JSON.stringify(arg) : arg);
  // 或者可以用spread运算符直接传递所有参数,例如:
  // const args = [...arguments];
  const args = Array.from(arguments).map(arg => typeof arg === 'object' ? JSON.stringify(arg) : arg);
  originalLog.apply(console, args);
  // 如果要将日志记录到本地文件中,则可以使用以下代码存储日志:
  // fs.appendFileSync('log.txt', args.join(' ') + '\n');
};

这将覆盖console.log,并使用原始console.log方法记录日志。您也可以修改此方法以记录日志到文件或其他日志记录服务。