我正在重构代码,并希望减少编写的代码行,这是我的代码:
let { user, change_log, new_value, old_value } = req.query;
user = user.replace(/'/g, "\\'");
change_log = change_log.replace(/'/g, "\\'");
new_value = new_value.replace(/'/g, "\\'");
old_value = old_value.replace(/'/g, "\\'");
所以我想使其像这样的单行或几行代码:
user, change_log, new_value, old_value =
(user, change_log, new_value, old_value).replace(/'/g, "\\'");
这样我不必重复每个变量就可以添加一个replace方法。这有可能还是我应该坚持当前的解决方案?
感谢那些能回答我的问题的人,如果我的代码做得不好,请纠正我。
最佳答案
您可以根据值创建一个数组,并在其上使用map
。使用Destructuring Assignment without declaration:
let { user, change_log, new_value, old_value } = req.query;
[user, change_log, new_value, old_value] =
[user, change_log, new_value, old_value].map(a => a.replace(/'/g, "\\'"))
注意:前一行的末尾必须为
;
。否则,它将把[]
视为req.query
的括号符号。像这样:req.query[user, change_log, new_value, old_value]
关于javascript - 如何将方法添加到多个变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57108940/