【问题标题】:How to console.dir() on extendScript?如何在extendScript 上使用console.dir()?
【发布时间】:2022-02-08 02:18:52
【问题描述】:

我想熟悉 extendScript 中的 DOM,我想通过 console.log(certainObject)console.dir(certainObject) 来检查它的属性。

console.log() 有一种方法,例如 $.writeln(certainVariable),但不会返回该对象的属性。

我可以使用extendScript toolkit,但在Data Browser 中我无法识别所有对象。

转到documentation 是令人困惑的,例如对于这个对象app.activeDocument.placedItems,它列出了某些属性,但是没有诸如方法app.activeDocument.placedItems.add(); 之类的基本属性。

那个方法是从哪里来的?继承? , 我怎样才能检查这个?。

【问题讨论】:

标签: javascript adobe-illustrator extendscript


【解决方案1】:

获取对象的所有 (?) 属性的最简单方法就是遍历它们并在控制台中打印结果:

var obj = app.selection[0];
var props = '';
for (var prop in obj) {
    try { props += prop + ' : ' + obj[prop] + '\n' }
    catch(e) { props += prop + ': ???\n' }
}
$.writeln(props.split('\n').sort().join('\n'));

不确定这是否是最好的方法,但我有时会这样做。 )

我看到了同样的解决方案,并将结果放入面板中。如果您知道如何创建面板并在其中填充文本,则可以很容易地完成。

至于方法……嗯,我不知道答案。

【讨论】:

  • 惊人的方法和非常好的答案,通过这种方法我可以绕过脚本语言在这方面的限制,谢谢!
猜你喜欢
  • 1970-01-01
  • 2023-02-12
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 2021-11-26
  • 2021-08-18
  • 1970-01-01
  • 2015-01-07
相关资源
最近更新 更多