gpt4 book ai didi

javascript - 比较堆栈轨迹(Chrome 开发者工具)

转载 作者:行者123 更新时间:2023-11-29 10:08:38 28 4
gpt4 key购买 nike

假设我有一个 JavaScript 程序,它对一个对象执行某些操作,并且我针对不同的对象运行了两次。

当我使用 Chrome 开发者工具调试程序时,是否有可能以某种方式自动比较/区分两次运行的堆栈跟踪?我的请求背后的想法是,如果我调试一个未知程序,我想知道不同对象的处理方式的区别,例如在程序中的哪一点检测到差异。

如果程序足够大,手动调试两个运行并尝试记住差异发生的位置(编辑)可能会非常烦人。

最佳答案

您需要指定应输出调用堆栈的执行点。如果两条路径都以同一个函数结尾,您可以在最后一条路径中调用 console.trace(),您将在控制台中获得这两条路径的堆栈输出。

示例:

var objA = { type: "a", val: 1 };
var objB = { type: "b", val: 2 };

function doSomething() {
console.log("do something");
doFinalThing();
}

function doSomethingElse() {
console.log("do something else");
doFinalThing();
}

function doFinalThing() {
console.trace();
}

function init(obj) {
if (obj.type == "a") {
doSomething();
} else {
doSomethingElse();
}
}

init(objA);
init(objB);

enter image description here

关于javascript - 比较堆栈轨迹(Chrome 开发者工具),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38094157/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com