javascript控制台的堆栈跟踪打印

javascript控制台的堆栈跟踪打印,javascript,console.log,Javascript,Console.log,我试图在文本区域中键入javascript代码,并在div中显示结果。 我问了一个类似的问题: 它适用于任何显式控制台语句。但是,当在文本区域中编写的代码中存在任何语法错误时,错误消息将仅在控制台中显示,而不会在代码中捕获 我使用的代码是: if (typeof console != "undefined") if (typeof console.log != 'undefined') console.olog = console.log; else

我试图在文本区域中键入javascript代码,并在div中显示结果。 我问了一个类似的问题:

它适用于任何显式控制台语句。但是,当在文本区域中编写的代码中存在任何语法错误时,错误消息将仅在控制台中显示,而不会在代码中捕获

我使用的代码是:

if (typeof console  != "undefined") 
    if (typeof console.log != 'undefined')
        console.olog = console.log;
    else
        console.olog = function() {};

    console.log = function(message) {
    console.olog(message);
    $('#result').append('<p>' + message + '</p>');
};
console.error = console.debug = console.info =  console.log
if(控制台类型!=“未定义”)
if(typeof console.log!=“未定义”)
console.olog=console.log;
其他的
console.olog=function(){};
console.log=函数(消息){
console.olog(消息);
$(“#结果”)。追加(“”+消息+”

”); }; console.error=console.debug=console.info=console.log
如果我在文本区域中键入
console.log(“hello”)
,这会起作用。
但是,当我故意键入
console.log(“he
时,错误只会显示在浏览器控制台中。是否有一种方法可以捕获此类消息并将其显示?

与浏览器控制台的方法相同


添加到代码中。

您可以使用
window.onerror
解决问题,请尝试

window.onerror = function(e) {
  console.log(e.stack);
}

我太傻了,忘了尝试,抓住!非常感谢!