const myError = new Error('만든 에러');
console.log(myError.name); // Error
console.log(myError.message); // '만든 에러'
console.log(myError.toString());
// 'Error: 만든 에러'
let error1 = new Error('making error');
error1.message = 'new message';
console.log(error1); // 'Error: making error'
error1.name = 'why';
console.log(error1); // 'Error: making error'
error1.message = 'new error message';
console.log(error1); // 'Error: making error'
console.log(error1.toString());
// 'why: new error message'
new Error('내용')
으로 에러를 생성하면 에러의 name
은 무조건 Error
, 에러의 message
는 내용
으로 결정된다.
에러.name
혹은 에러.message
를 직접 변경하는 경우, 에러를 직접 콘솔에 찍어도 처음 생성했던 상태대로만 출력된다.
하지만 .toString()
메소드를 사용하는 경우에는 변경한 내용이 적용되어 보인다.
왜지...