Есть модуль user.js
//user.js
'use strict';
module.exports = function() {
return function(value) {
return {
name: "Вася",
sayHi: function() {console.log("Привет, я " + name)
}
};
}
}
Подключаем это модуль в index.js
//index.js
'use strict';
var user = require('./user');
var newUser = user(); // newUser - функция для создания объекта
var u0 = newUser(); // {name: "Вася", sayHi: function() { console.log("Привет, я " + name) } }
var u1 = newUser(); // Тоже самое
Нужно, чтобы в index.js вызвался метод isValid() функции newUser()
newUser.isValid(value);
Я могу задать этот метод после инициализации функции newUser() вот так:
newUser.isValid() = function() {//какие-то действия}
Но как задать этот метод в модуле user.js, ведь там функция создающая объект анонимная?
Конечный файл index.js должен выглядеть так:
//index.js
'use strict';
var user = require('./user');
var newUser = user(); // newUser - функция для создания объекта
newUser.isValid(/*Какой-то параметр*/); //Возвратить [Boolean]. Например true, если "Какой-то параметр прошёл проверку"
var u0 = newUser(); // {name: "Вася", sayHi: function() { console.log("Привет, я " + name) } }
var u1 = newUser(); // Тоже самое