我正在尝试在 Node JS 项目中使用“ifincludes”语句来过滤从 .txt 文件中提取的结果。这个想法是,用户输入的序列号与前 5 个数字中的特定型号相关联,因此我想过滤放入 HTML 中的数据,但它似乎只有在整个字符串相同的情况下才有效。也许我错了(我对 JS 很陌生,所以我很可能是这样),但我的理解是 .includes 应该是“如果 X 包含 Y”而不是“如果 X = Y”。我在项目的其他地方使用了它的文本输入,但它的行为却并非如此。 <div class="col-md-12 text-center serialtab"> <h1>Serial Number:</h1> <input type="text" minlength="10" required id="serialnumberinput" name="serialnumberinput" class="serialtextbox" placeholder="Type Serial Number Here: 19180-12345"> <button type="submit" class="buttonalt serialsubmit" id="serialsubmit" onclick="ReadSerials(), PopulateModelList();">SUBMIT</button> </div> .... <select class="fixselect" name="model" id="model" onchange="ReadModels()"> <option value="" selected="selected" >Select Model</option> <!-- Models are added from the modelist.js script from the model.txt file --> </select> function PopulateModelList() { const fs = require("fs"); const { parse } = require("csv-parse"); var modellist = document.getElementById('model'); var serial = document.getElementById("serialnumberinput").value; //I have tried without .value also var serialmodel = serial.substring(0,5); //Adding .value to this results in 'undefined' var testing = document.getElementById("modeltesting"); testing.innerHTML += serialmodel; //Outputs '19180' fs.createReadStream("./model.txt") //Tried using it as a .csv also but it did not change anything .pipe(parse({ delimiter: ",", from_line: 1, })) .on("data", function(row) { console.log(row); if (row.includes(serialmodel)) { modellist.innerHTML += '<option value="' + row + '">' + row + '</option>' ; } else { } }) } 我的“serialmodel”var 输出“19180”,并且应该从 .txt 文件调用的行是“19180 - 测试”。如果我更改 HTML 以允许文本输入,并在“serialnumberinput”字段中输入整行“19180 - 测试”,则该函数将按预期工作,因此似乎需要整个字符串匹配。我尝试使用indexOf代替,但这只是输出整个文件。我也尝试了从其他论坛帖子中找到的许多其他解决方法,但是我在中断后重新选择了这个项目,所以不记得这些到底是什么,抱歉。 来自 MDN Array.prototype.includes()。 includes()实例的Array方法确定数组的条目中是否包含某个值,并根据情况返回true或false。 它不会检查数组项是否包含 partial 值。 您正在寻找的东西更像是这样的: const containsSerialModel = row.some(cell => cell.indexOf(serialmodel) > -1); 现在,您是否应该在所有单元格中盲目地寻找serialmodel值是一个单独的论点。