我想用指定的定界符连接不确定数量的字符串参数,所以我用Google搜索了这个问题,并遇到了Mozilla's website上的一页,指示如何使用arguments
对象执行此操作。
function myConcat(separator) {
var args = Array.prototype.slice.call(arguments, 1);
return args.every(x => x === '') ? '' : args.join(separator);
}
当我在普通的JS编译器(如repl.it)中尝试此操作时,它运行得非常完美!对其进行证明,尝试和测试,我感到非常高兴。
但是,当将代码插入我的Angular 6应用程序时,我得到了通常的错误,指出在调用函数时,我传入了太多参数,并且只期望一个参数。
我可以做些什么来使它在Angular 6中工作吗?
最佳答案
如果使用rest parameters而不是arguments对象,则可能会起作用:
function myConcat(separator, ...strings) {
return strings.every(x => x === '') ? '' : strings.join(separator);
}