В чем разница между экспортом функций JavaScript и класса JavaScript?
Начиная с ES6 мы смогли написать класс, используя ключевое слово "класс", которое похоже на другие языки ООП, такие как Java, C#...
Итак, теперь мы можем написать JS-модуль по-разному, скажем, у нас есть две версии кода:
V1:
let data = "data that we need it in this module";
exports.create = function (obj) {
// do something
}
exports.findAll = function () {
// do something
}
V2:
class MyObject {
constructor () {
this.data = "data that we need it in this module";
}
create(obj) {
// do something
}
findAll () {
// do something
}
}
const instance = new MyObject();
module.exports = instance;
Две версии ведут себя одинаково, но какая версия лучше? (с точки зрения стоимости памяти, процессора..)