javascript - 在 python 中解析 JavaScript 参数值

标签 javascript python regex parsing arguments

有没有办法解析传递给Python中JavaScript函数的参数值?

我希望能够自动记录 JavaScript 函数调用,以确保它们传递了正确的参数。

例如,在:

function mymethod(fruit, vegetable, drink) {
    // dummy function
}

function drink(drink) {
    this.drink = drink
}
var myveg = 'tomato'

mymethod('grape', myveg, new drink('apple juice'))

函数调用将被重写为:

mymethod(
    /*fruit*/ 'grape', /*vegetable*/ myveg, 
    /*drink*/ new drink('apple juice')
)

所以我真的希望能够将参数拆分为 ["'grape'", "myveg", "new Drink('apple juice')"] 删除任何以前自动插入的内容过程中的注释,最好允许子函数调用作为参数。

如果一切都失败了,我会这样做,以便参数在方法调用之前作为注释(这会更容易解析),但我想我应该先问,因为这会让错误看起来更明显.

提前非常感谢您。

最佳答案

您将需要一个完整的 JavaScript 解析器,除非您事先知道您的 JavaScript 代码遵循您事先知道的一些约定。正则表达式无法胜任这项任务,因为它们不适合匹配括号等嵌套结构。

Python 有许多解析器生成器工具:Python parsing tools 。我不知道他们中是否有可用的 JavaScript 解析器。

关于javascript - 在 python 中解析 JavaScript 参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3590629/

相关文章:

javascript - es6 中私有(private)变量(前导下划线)的等价物?

python - 如何正确转发dropout层

python - 在 Python 中打印不同级别

java - 正则表达式删除 2 个字符串之间的所有内容

javascript - 如何在 Jquery 多选中选择一个包含其 parent 和 child 的组

javascript - 单击按钮时加减 TR (ID +1)

javascript - 正则表达式搜索并为每次出现的表达式用不同的内容替换表达式

php - 正则表达式选择的内容超出了我的预期(PHP)

javascript - 使用 CSV 文件预处理 Highchart 数据

python - 如何在 Python 中使用 Selenium?