【发布时间】:2021-10-21 00:34:38
【问题描述】:
这个简单的函数接受一个包含 10 个单个数字的数组,并将这些数字输出为以通用电话号码格式编写的字符串。遍历数组,程序如何“知道”它应该替换格式中的每个“x”,而不是每次循环时只替换第一个“x”?我知道如果它只替换第一个“x”,那么这个函数就没有意义了。但我不明白程序“知道”在遍历数组时替换每个“x”是如何发生的。
function createPhoneNumber(numbersArr){
var format = "(xxx) xxx-xxxx";
for(var i = 0; i < numbersArr.length; i++)
{
format = format.replace('x', numbersArr[i]);
}
return format;
}
【问题讨论】:
-
在第二次循环迭代中,第一个
x已经被正确的值替换了,所以它将替换新的第一个x(实际上是原来的第二个x字符串) -
我会说这是一个聪明的问题解决方案。我没有想到这个解决方案。
标签: javascript for-loop iteration