Объект исключения в NodeJS имеет необычную структуру.Я хотел бы иметь возможность получить доступ к сообщению об ошибке, но это не именованный атрибут объекта.Например:
var fs = require("fs");
function main() {
"use strict";
try {
var stats = fs.statSync("./nonexistantFile.txt");
console.log(stats);
}
catch (exception) {
console.error("exception: " + JSON.stringify(exception));
console.log(exception);
}
};
main();
Этот код печатает следующий вывод:
exception: {"errno":-2,"code":"ENOENT","syscall":"stat","path":"./nonexistantFile.txt"}
{ [Error: ENOENT: no such file or directory, stat './nonexistantFile.txt']
errno: -2,
code: 'ENOENT',
syscall: 'stat',
path: './nonexistantFile.txt' }
Вы можете видеть, что console.log()
печатает текстовое сообщение об ошибке таким образом, чточасть объекта.Является ли этот текст частью объекта исключения?Или это то, что console.log()
добавляет?
Я хотел бы иметь возможность перехватить текстовое сообщение об ошибке и сохранить его.Как мне получить доступ к этому сообщению?