`binding.pry`用于javascript控制台?

cge*_*nco 24 javascript ruby read-eval-print-loop pry

在Ruby中,我可以binding.pry在我的代码中的任何位置键入,在执行时,我的控制台将进入REPL,我可以访问所有局部变量,可以进行更改,并执行任意代码.

例:

# foo.rb
require 'pry'
n = 5
binding.pry
puts "your number is #{n}"
Run Code Online (Sandbox Code Playgroud)

当我运行它:

$ ruby foo.rb

From: /Users/cgenco/Desktop/foo.rb @ line 4 :

    1: # foo.rb
    2: require 'pry'
    3: n = 5
 => 4: binding.pry
    5: puts "your  number is #{n}"

[1] pry(main)> n = 100
=> 100
[2] pry(main)> exit
your number is 100
Run Code Online (Sandbox Code Playgroud)

这是一个令人难以置信的调试工具,特别是对于需要复杂设置的情况:我可以binding.pry在现场键入我需要更多代码,弄乱,找出需要编写的代码,然后将抛光的代码添加到实际的源代码中.

在浏览器控制台中是否有像jy这样的工具?

Pig*_*ras 28

debugger;正如这个答案所示,请尝试使用您的代码.您的浏览器开发者工具必须是开放的

  • 请注意未来的自己:在节点脚本中的某个位置添加“debugger”,然后使用“node inspect SCRIPT.js”运行它,然后输入“cont”并按 Enter 键,然后当您的脚本点击“debugger”行时会停下来。要输入 REPL,请输入“repl”并按 Enter 键。 (2认同)

Dan*_*Tao 7

大多数浏览器都有与此非常相似的开发人员工具.

例如,在Chrome中,按Ctrl+ Shift+ I打开开发人员工具面板.单击"源"选项卡,您可以浏览已加载的任何JavaScript文件.从这里,您可以通过单击左边距来设置断点.现在,当您重新加载页面时,JavaScript执行将在您指示的行中暂停.

在面板的底部有一个"显示控制台"按钮,它将打开一个你可以玩的REPL.

这是一个屏幕截图,展示了我刚提到的一切:

StackOverflow上的Chrome开发人员工具的屏幕截图

Firefox,IE,Safari和Opera中有类似的工具.只需谷歌"开发者工具[您选择的浏览器]"即可了解有关它们的更多信息.