I implemented search module, but I'm a novice in programming and I'm not sure about public and private functions that I coded. Did I do it right?
var data = require('./data');
function My_module(string) {
var data_size_ = data.length;
/**
* @param {Array.<Object>} data.
* @return {Array.<Object>} result.
*/
var reformat_ = function() {
var result = new Array(data_size_);
var first_name;
var last_name;
var domain;
for (var i = 0; i < data_size_; ++i) {
first_name = data[i].first_name.toLowerCase();
last_name = data[i].last_name.toLowerCase();
domain = data[i].domain.toLowerCase();
result[i] = {
'first_name': first_name,
'last_name': last_name,
'domain': domain,
};
}
return result;
};
var formatted_data_ = reformat_();
/**
* A search function.
* @return {Array.<Object>} Result
*/
this.search = function(string) {
var result = [];
var len = string.length;
for (var i = 0; i < data_size_; ++i) {
if (formatted_data_[i].first_name.slice(0, len) === string ||
formatted_data_[i].last_name.slice(0, len) === string ||
formatted_data_[i].domain.slice(0, len) === string) {
result.push(formatted_data_[i]);
}
}
if (result) {
return result;
}
}
}
module.exports = My_module;