請您檢查我的代碼錯誤在哪裏?它應該循環槽1數組來選擇每個字符串,然後通過第二個數組循環,並檢查第二個字符串的值是否包含第一個字符串的值。JavaScript搜索和循環 - 不會返回正確的值
for (var i = 0; i < oldLines.length; i++){
var subStringEach = oldLines[i];
var subStringEachNoDash = subStringEach.replace(/[^a-z0-9]/g,'');
// read New URLs and line by line save them as an object
var newLines = $('#newUrl').val().split(/\n/);
var newUrlResult = [];
for (var j = 0; j < newLines.length; j++){
var newUrlString = newLines[j];
var newUrlStringNoDash = newUrlString.replace(/[^a-z0-9]/g,'');
var isThere = newUrlStringNoDash.search(subStringEachNoDash);
if (isThere !== -1) {
newUrlResult[i] = newLines[j];
}
else {
newUrlResult[i] = "";
}
}
stockData.push({OldURL:oldLines[i],SearchSubstring:subStringEach,NewURL:newUrlResult[i]});
}
現在發現只有結果的一部分。我的地方,第一個數組:
anica-apartment
casa-calamari-real
ostrovni-apartman
和第二陣列:
http://tempweb3.datastack.cz/be-property/anica-apartment/
http://tempweb3.datastack.cz/be-property/ostrovni-apartman/
http://tempweb3.datastack.cz/be-property/st-michael-apartment/
http://tempweb3.datastack.cz/be-property/casa-calamari-real/
,它只能找到與回報casa-calamari-real, http://tempweb3.datastack.cz/be-property/casa-calamari-real/
和其他人返回空。
任何想法請嗎?
這裏是Codepen的完整代碼:https://codepen.io/vlastapolach/pen/VWRRXX
這裏有一個工作版本:https://jsfiddle.net/khrismuc/xh8y14jL/ –
謝謝@ChrisG。它終於工作:) –