2017-07-25 43 views
-1

所以这是我的代码:当一个变量替换字符,我得到这个错误

exports.run = (client, message, args, Discord) => { 
    args = args.replace(/&/g, "").trim() || "+"; 

但我得到这个错误

args.replace is not a function 

谁能帮助?

+1

可能args不是一个字符串。 –

+0

检查参数的类型,可能它不是字符串对象'console.log(typeof(args));' 另外,检查'args'是否是字符串,然后它是空的? –

+0

@OmSao这也没有工作:'''console.log(typeOf(args)); ^ ReferenceError:typeOf is not defined''' – Anidox

回答

1

参数最有可能不是一个字符串,而是一个数组。您可以使用for循环遍历数组,并在那里进行替换。

for (var i = 0; i < args.length; i++) { 
    args[i] = args[i].replace(/&/g, "").trim() || "+"; 
} 
+0

它与OP在尝试什么不同? –

+0

这不适合我。 – Anidox

+1

@OmSao args [i]是一个字符串,而args是一个数组,所以替换函数不会抛出错误。 –

相关问题