我有一个哈希表,其中包含两个主键下的值:Subject
和 Query
。每个 Query
可以有多个 Subject
。
例如
Query-blabla, Subject1-12, Subject2=13
我正在尝试构建一个包含每个 Query
自己的主题的字符串,并且需要用逗号 ,
分隔它,以便我可以将其插入到cvs 文件,由 coulmns 提供。
一切都很好,我遇到的唯一问题是粗线。
现在看起来像这样:
subject,subject,query,subject,,subject,subject,query,subject,,subject...
它需要是:
subject, subject, query
subject,subject, query etc...
我有以下代码
for (var k = 0; k < keyToGeneDetailMappingGroupArray.length; k++)
{
var isGroupContained = keyToGeneDetailMappingGroupArray[k].hasItem(currentKey);
if (isGroupContained)
{
//Not relevent: Watch the data structures: sumElements += keyToGeneDetailMappingGroupArray[k].getItem(currentKey).length;
sumElements += 1;
linescontentSubject = keyToGeneDetailMappingGroupArray[k].items[currentKey][0].Subject;
linescontentQuery = keyToGeneDetailMappingGroupArray[k].items[currentKey][0].Query;
databegin = linescontentQuery + "," + linescontentSubject;
if(dataAll.includes(linescontentQuery))
{
dataAll = linescontentSubject + "," + dataAll + ",";
} //this is the problem//
else
{
dataAll = dataAll + databegin + "\r";
}
index += Math.pow(2, k);
}
}
最佳答案
看起来您需要在完成该行之前 trim 尾部逗号。
else {
dataAll = dataAll.substring(0, dataAll.length - 2);
dataAll = dataAll + databegin + "\r";
}
另一种更简洁的替代方法是使用数组代替字符串连接,并使用数组的join方法完成。
var dataLine = [];
for (var k = 0; k < keyToGeneDetailMappingGroupArray.length; k++){
var isGroupContained = keyToGeneDetailMappingGroupArray[k].hasItem(currentKey);
if (isGroupContained){
//Not relevent: Watch the data structures: sumElements += keyToGeneDetailMappingGroupArray[k].getItem(currentKey).length;
sumElements += 1;
linescontentSubject = keyToGeneDetailMappingGroupArray[k].items[currentKey][0].Subject;
linescontentQuery = keyToGeneDetailMappingGroupArray[k].items[currentKey][0].Query;
databegin = linescontentQuery + "," + linescontentSubject;
if(dataLine.includes(linescontentQuery)){
dataLine.splice(0, linescontentSubject);
}
else {
dataAll = dataLine.join(',') + databegin + "\r";
dataLine = []; //reset the dataline
}
index += Math.pow(2, k);
}
}
关于javascript - 以正确的顺序附加字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41381615/