JSFiddle - React, Tailwind, and code Playground

JavaScript

function addProperty(object, name, initialValue) {
	//Просто попытка
  var initvalue = initialValue;

	Object.defineProperty(object, 'set' + name[0].toUpperCase() + name.slice(1), {
  	value: function(value) {
    	//Просто попытка
      initvalue = value;
    }
  });
 
	Object.defineProperty(object, 'get' + name[0].toUpperCase() + name.slice(1), {
  	value: function() {
    	//Просто попытка
      return initvalue;
    }
  });
}


var obj = { };
addProperty(obj, 'test', 10);
console.log(obj.getName()); // 10
obj.setTest(100);
console.log(obj.getName()); // 100
console.log(obj); // { getTest:..., setTest: ...} - самого свойства тут нет