【发布时间】:2016-03-29 16:05:35
【问题描述】:
我有一个 csv 文件,我已经用换行符分割了它,我用换行符中的逗号将它进一步分解,以提供我正在寻找的三件事并命名它们以供以后使用该程序。如果其中一个对象与某个值匹配,我要做的是删除一个项目。
var values=[];
var output="";
for(i = 0; i < csv_split.length; i++){
csv_split[i] = csv_split[i].split(',') //Splits the csv file that's already split by new line by commas
values[i]={}
values[i].Name=newline_split[i][1]; //finds the second object and names it values.name
values[i].Rev=newline_split[i][2]; //finds the third object and names it values.rev
values[i].URL=newline_split[i][9]; //finds the eighth object and names it values.url
}
这将在以后使用,这样我就可以获得我正在寻找的值的列表。
for (i=0; i < values.length; i++){
output += values[i].Name + ',';
output += values[i].Rev + ',';
output += values[i].URL+ ',';
output += "\n\n||||||";
}
所以我所做的就是将这段代码修改为第一个 for 循环:
if (values[i].Rev == "NO ACCESS") {
csv_split[i].splice(0,1);
}
这背后的想法是,如果 values.Rev 与“NO ACCESS”匹配,它将删除整个 csv_split[i],以便以后不会在输出中显示它。
无论 values.Rev 是否匹配“NO ACCESS”,现在运行脚本都会给出整个输出。我错过了什么?
【问题讨论】:
-
您的意思是在不满足条件时删除整个 CSV 行?
-
我想在满足条件时删除整行 csv_split。例如,如果在 csv_split[1] 中 values[1].Rev 的值等于“NO ACCESS”,我想从 csv_split[1] 中删除所有值,以便稍后在第二个代码框中显示它不会显示 values.Rev = "NO ACCESS" 的任何行
标签: javascript arrays if-statement for-loop