如何在javascript上打印异常stacktrace?

如何在javascript上打印异常stacktrace?,javascript,logging,google-sheets,custom-exceptions,Javascript,Logging,Google Sheets,Custom Exceptions,我的函数意外地管理一些未解决的异常。层1在层2上重新抛出异常。但没关系 我的问题很简单,这很有效: throw { name:"RangeWithValues", message:"The result range cells must be empty", //stack:e, toString:function(){return ( this.name + ": " + this.message);} }; 这不是: thr

我的函数意外地管理一些未解决的异常。层1在层2上重新抛出异常。但没关系

我的问题很简单,这很有效:

throw {
       name:"RangeWithValues",
       message:"The result range cells must be empty",
       //stack:e,
       toString:function(){return ( this.name + ": " + this.message);}
     };
这不是:

throw {
           name:"RangeWithValues",
           message:"The result range cells must be empty",
           //stack:e,
           toString:function(){return ( this.name + ": " + this.message + ( this.hasOwnProperty(stack)?("\nCaused by: "+stack):"") );} 
         };
它将[对象]打印在谷歌的前置表上。我想打印堆栈跟踪。
我不知道我是否需要更多的信息给你,我的问题似乎非常简单=S

创建一个自定义错误,而不是直接抛出对象:

function CustomError(name, message) {
    this.name = (name || '');
    this.stack = (new Error()).stack;
    this.message = (message || '') + ' ' + this.stack;
}

CustomError.prototype = Error.prototype;

throw new CustomError('RangeWithValues', 'The result range cells must be empty');
另请参见,一个框架无关的微型库,用于在所有web浏览器中获取堆栈跟踪