我编写了以下代码来复制值。
valueName.forEach((item, idx) => {
if (item.match(selectedName)) {
let number = item.split('_').pop();
if (Number(number) > count)
count = Number(number) + 1;
else
count++;
}
});
selectedName = selectedName + "_" + count;
对于selectedName
的字符串值(如abc,测试等)工作正常。但是,如果用户输入数字值(如1、2等),则出现item.match is not a function
错误。谁能帮我这个忙。在此先感谢..
您可以在String
循环中使用它们之前将其转换为forEach
。
这里是示例代码:
selectedName = selectedName.toString();
valueName.map(String).forEach((item, idx) => {
if (item.match(selectedName)) {
let number = item.split('_').pop();
if (Number(number) > count)
count = Number(number) + 1;
else
count++;
}
});
selectedName = selectedName + "_" + count;