使用正则表达式从javascript函数返回语句中查找键/值
Using regex to find key/values from a javascript function return statement
我不太确定如何简短地解释这一点,所以标题可能有点令人困惑…
我有这段javascript代码string:(从换行符,双空格等中剥离干净):
function (a, b) { this.super('__construct', a, b); return { foo: this.test, bar: this.ParentFunctionAdd }; }
我想弄清楚如何从这个函数的返回语句中得到一个键/值数组。执行代码或使用eval不是一个选项。
本质上,我想要匹配return语句的大括号之间的任何内容,并在return中得到一个键/值数组。
期望的结果如下:
{
'foo' : 'this.test',
'bar' : 'this.ParentFunctionAdd'
}
提前感谢!!
如果您喜欢使用正则表达式,这里有一个解决方案
/([^{,]+):([^},]+)/g
"function (a, b) { this.super('__construct', a, b); return { foo: this.test, bar: this.ParentFunctionAdd }; }".match(/([^{,]+):([^},]+)/g);
输出
[" foo: this.test", " bar: this.ParentFunctionAdd "]
正如您所看到的,您需要在使用()值时修剪它们。
检查演示
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 如何在ReactJS JSX中执行嵌套的if-else语句
- 正在全局范围中查找JavaScript函数
- Javascript(Angular)从一个对象数组到第二个数组查找值
- 在不使用jquery的情况下查找页面中的所有锚点并附加函数
- es6 相当于下划线查找位置
- 在DOM中查找一个模式并替换它's的内容使用jquery
- 自动修复”;语句前缺少分号“;
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 如何在不传递此信息的情况下查找被调用的元素
- Lodash 从值数组中查找数组中的值
- 如何使用JavaScript查找1和N之间的所有数字的总和
- 使用RegExp查找url中的字符
- 查找元素高度,包括边距
- 如何在 API 调用后和 if 语句中启用提交按钮
- if 语句在 javascript 中查找类
- jQuery IF语句,它查找所有具有null值的输入并删除相应的元素
- 使用正则表达式从javascript函数返回语句中查找键/值
- 查找if语句中不为真的特定参数
- 查找最后一个导入语句的索引