问题标签 [inspect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1439 浏览

html - firebug lite 的轻量级替代品

我在 ie6 中调试的网站有很多低效的遗留代码,当我尝试运行 firebug lite 来尝试找出一个棘手的 hasLayout 问题时,它会导致 ie6 崩溃。

是否有替代 firebug lite 的方法,它只是重新创建 firebug 的 html 选项卡并检查元素功能?

编辑我尝试了MODI,但由于它仅提供检查功能,没有 DOM 遍历,因此对于调试因 hasLayout 错误而未显示在屏幕上的元素毫无用处。

0 投票
2 回答
372 浏览

google-chrome - 我在 Chrome 的“脚本”选项卡中看不到我的脚本

当我检查我的扩展程序页面时,我在 Chrome 的“脚本”选项卡中看不到我的脚本。我的脚本只是一个 hello world,我什至创建了一个 .js 文件并将其包含在 src 属性中,但它仍然没有显示。

0 投票
3 回答
11635 浏览

ruby-on-rails - 如何解决“对象不支持#inspect”错误?

我正在使用 rails v3.2.2,当我尝试加载关联记录时出现一个奇怪的错误。

以下是我得到的终端输入/输出:

在我的Category模型中,我有:

在我的Category::Article::ArticleRelationship我有:

如何解决相关问题Object doesn't support #inspect


注意:在同一个Category模型中,我有一个类似的语句,比如 for Category::Article::ArticleRelationship(它User通过一个Category::UserRelationship类与一个类相关)并且它不会引起问题。

0 投票
0 回答
1301 浏览

javascript - 如何使用 Chrome javascript 事件监听器?

Chrome 检查元素事件侦听器对于查看 dom 元素上的事件侦听器非常有用。然而,展开后,没有“人类可利用”的数据......

http://imageshack.us/photo/my-images/152/screenshot20120510at145.png/

有没有办法获得有关事件侦听器的更多信息?就像它所在的 js 文件/行号一样?

0 投票
2 回答
330 浏览

python - python 检查.getargspect

导入一个模块,然后通过模块的命名空间查找任何函数(您可以假设任何具有call () 方法的对象都是一个函数)并打印函数的名称及其参数,就像它可能出现在def 语句。

我的问题是在我遍历模块并获得所有函数后,我无法将函数名称传递给 inspect.getfullargspec() 因为它是一个字符串。如何使字符串可调用?

0 投票
1 回答
196 浏览

ruby - 自定义 IRB 输出

我创建了一个名为 SpecialArray 的类,我想自定义 irb 显示的输出类型。目前,当我创建类的新实例时,irb 返回整个对象。这是我目前看到的:

但我只想显示我定义为输出的内容。换句话说,我想看到这个。

我需要做什么来指定 irb 应该只显示输出?

解决方案:

这是我最终创建的方法。

0 投票
2 回答
5478 浏览

python - 带有内置函数的 Python inspect.getargspec

我试图找出从模块中检索到的方法的参数。我发现了一个inspect具有方便功能的模块,getargspec. 它适用于我定义的函数,但不适用于导入模块中的函数。

我会收到这样的错误:

inspect.getargspec仅针对本地功能设计还是我做错了什么?

0 投票
1 回答
344 浏览

python - 检查对象python的属性

我在 python 中有一个对象,例如<Person at /project/persons/id>. 现在我想查看这个人的所有属性,比如我有这个人的名字、姓氏和头衔。我想得到的是 {'FirstName':'Anna', 'LastName': 'Perry', 'Title' : 'Ms.'}.

我试过object.__dict__了,但它也给了我其他内置属性。我只想获取用户指定的属性。谁能帮我这个?

0 投票
1 回答
284 浏览

python - 有没有办法从实时 Python 解释器会话或动态创建的对象中检索源代码?

当 Python 对象被动态创建时,无论是在实时解释器会话中,通过解组腌制对象或其他方式,该inspect模块不能再用于检索其源代码(因为inspect依赖于源已被从磁盘上的某个文件编译)。

如果我有这样一个简单的类:

是否有一些直接的方法来获取Foo类或f对象的源代码?

我知道至少有一些方法可以解决这个问题的一部分。例如,可以使用inspect.getmembers查找 的所有成员f,遍历成员以查找可调用和不可调用,使用inspect.getargspec确定方法签名等。从所有这些来看,至少可以重新生成一些源代码,但不能重新生成每个方法中的代码。模块可以生成每个方法的字节码版本dis,但仍需要将其反编译成源代码。

有没有更好的方法来做到这一点,我错过了?可以用 的结果做些sys._getframe()什么吗?

0 投票
2 回答
1719 浏览

python - 使用inspect将参数传递给Python中的函数

我有一个 Python 脚本,它创建一个包含自己函数的字典,我希望它通过使用 YARP 读取函数名称和参数来执行它们(尽管 YARP 的知识与这个问题无关)。

我创建了一个名为“inc”的字符串列表,该列表由进入程序的值填充。第一项是函数名,列表中的任何其他字符串都是参数。我创建了一个名为“methods”的字典,其中键是函数名,值是对函数对象的引用(使用检查模块)。我将函数的返回值存储在变量“结果”中。

下面的代码片段显示了我目前使用的简化版本,它运行良好,但无法处理具有多个参数的函数。为了避免这种情况,如果函数需要更多参数,我会使用列表:

理想情况下,我想改变它,以便我的函数可以有任意数量的参数,但我不知道如何做到这一点。我是 Python 新手,我查看了文档和各种网站 - 我只是找不到解决方案。我尝试过创建参数元组之类的方法,但这也不起作用,因为它最终将整个元组作为一个参数传入。

这个问题有没有更好的解决方案,比如创建某种代表一组参数的对象并将其传递给函数?任何建议将不胜感激!