在 Chrome 中这是可能的,但我找不到在 Safari 中执行此操作的方法。是否可以?如何?
5 回答
目前这是不可能的。
最接近的选项是暂停 JavaScript 并从控制台执行命令。
要打开 Safari 开发工具,请CtrlAltC在 Windows 或commandoptionCMac 上按。或者在 Safari Preferences -> Advanced -> Show Develop Menu 的菜单栏中启用 Safari dev 命令。
请参阅Apple 的文档以了解如何使用其开发工具。
与 Chrome 不同,Safari 调试器目前不支持单击脚本文件并就地编辑它的功能。但是,您仍然可以使用断点或暂停按钮停止执行,然后在控制台中执行代码以更改值,然后继续执行。
例如,如果您有以下代码:
var t = 1;
(function(){
var t = 2;
console.log(t); //* put break point on this line..
})();
console.log(t);
而你只是一个断点,然后t = 4
在控制台中运行,然后将值4
打印1
到控制台。
自 2020 年 4 月起,这在 Safari 中成为可能!
尽管 chrome 和 safari 都使用 webkit 作为引擎,但 chrome 对其进行了自定义和添加。javascript 的实时编辑似乎就是其中之一。
如果您仔细观察,chrome 和 safari 中的调试面板也有许多其他差异。一个清晰可见的变化是 chrome 中存在的设置图标,而这在 safari 中不可用。
在 Safari 技术预览版 15.4 中尝试:
console.log("I'm live!");
它输出
> "I'm live!"