JSFiddle - React, Tailwind, and code Playground
JavaScript
function compile_csv_search(text, key_name) {
var lines = text.split('\n');
var keys = lines[0].split(',');
var key_index = keys.indexOf(key_name);
return function(value) {
for(var i = 1; i<lines.length; i++) {
current_line_values = lines[i].split(',');
if(current_line_values[key_index] === value) {
var result = {};
for(var j = 0; j<keys.length; j++) {
result[keys[j]] = current_line_values[j];
}
return result;
}
}
}
}
var csv_by_name = compile_csv_search(
"ip,name,desc\n"+
"1.94.0.2,server1,Main Server\n"+
"1.53.8.1,server2,Backup Server\n",
"name");
console.log(csv_by_name("server2"));
console.log(csv_by_name("server9"));