繁体   English   中英

TypeError:无法在compareResults调用未定义的方法“ replace”

[英]TypeError: Cannot call method 'replace' of undefined at compareResults

function generateBC(url, separator) {
var splitthis = url.split("/");
var MiddleBit = [];
var RemoveFirstElement = splitthis.shift(); 
var RemoveLastElement  = splitthis.pop(); 
var RemoveLastElementDot = RemoveLastElement.substring(0, RemoveLastElement.indexOf('.')).toUpperCase();
var arrayLength = splitthis.length;
for (var i = 0; i < arrayLength; i++) {
 var elementOk =  splitthis[i].toUpperCase();
var urlOk = "<a href='/pictures/'>" + elementOk + "</a>";
  MiddleBit.push(urlOk);
 }
var ConMiddleBitS = String(MiddleBit).replace(/,/g , separator);
var completed = '<a href="/">HOME</a> ' + separator + ConMiddleBitS + separator + "<span class='active'>" + RemoveLastElementDot + "</span>" ;
document.write(completed);
}
generateBC("mysite.com/pictures/hotels/tens/holidays.html", " : ");

我不知道为什么

TypeError:无法在.replace()上的compareResults`上调用未定义的方法“ replace”?

有人可以解释一下原因,因为我认为上述内容没有问题。

谢谢!

似乎您正在尝试在数组上使用String方法。 您是否尝试过加入数组并使用replace()方法?

var ConMiddleBitS = MiddleBit.join('').replace(/,/g , separator);

编辑:

如果您尝试从阵列中删除,而不必使用replace,则只需执行MiddleBit = MiddleBit.join(separator)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM