【问题标题】:Finding functions with default value in javascript在javascript中查找具有默认值的函数
【发布时间】:2018-02-26 21:25:31
【问题描述】:

在将我的网站上传到 heroku 时出现错误,因为函数中有默认值。
到目前为止,我已经多次使用默认值,它们位于 50000 列 javascript 文件中,但我无法真正找到所有这些值。 所以我尝试使用正则表达式在 sublime 中找到所有具有默认值的函数。 我试过这个正则表达式。

function.*\(.*\=.*\)

但它正在寻找这种字符串(这不是默认值函数)。

Function(e)) return Q.grep(t, function(t, i) { return !!e.call(t, i, t) !== n })

要搜索的示例函数

var abc = function(x , y = 1)
function abc(x , y = 1)

请帮忙,我是正则表达式的新手,真的很难找到答案。

【问题讨论】:

  • 你遇到什么样的错误?也许修复它比你的代码更容易。
  • 我收到了ExecJS::RuntimeError: SyntaxError: Unexpected token operator «=», expected punc «,»,我发现 uglify 不支持函数中的默认值的答案,所以我将使用默认值更改所有函数。

标签: regex function sublimetext3 default-value


【解决方案1】:

试试这个正则表达式function[a-zA-Z ]*\([a-zA-Z \,]+[a-zA-Z ]*[=]。无论参数数量如何,它将使用默认参数匹配函数。我希望这会有所帮助。

【讨论】:

  • 您是否愿意制作 sn-p 以获得更多可视化效果。
  • 试试这个function*\([a-zA-Z \,]+[a-zA-Z ]*[=]。这应该有效。我还将编辑我的旧答案
  • 您的答案是找到类似的,但没有找到function abc(d, e, f, g, h, i = 30) 函数。
  • 立即尝试function[a-zA-Z ]*\([a-zA-Z \,]+[a-zA-Z ]*[=] 。这会做到的。我还编辑了我的答案。如果它有效,请感谢您的努力并投票。
【解决方案2】:

【讨论】:

  • 没有找到具有默认值的函数。
【解决方案3】:

试试这个function[\s\w]*\([\w\s\d,]*[\w\s]+=[\w\d\s'",]*\)。默认值可以是字符串,函数也可以有名称: var abc = function some_name (x , y = 1, z = "string", z_z) { var = 1

【讨论】:

  • 正在寻找function C(t, e) { return { get: function() { return t() ? void delete this.get : (this.get = e)
  • 我已经更新了答案。请尝试新版本。
  • 找不到所有
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-25
  • 2011-10-15
  • 1970-01-01
  • 1970-01-01
  • 2021-02-03
  • 1970-01-01
相关资源
最近更新 更多