Присвоить значение через аргумент?
Вы передаете строку в функцию, это примитивное значение всего их 6: String, Number, Boolean, Symbol, null, undefined. Создается копия вашей строки которая присваивается параметру str. Если бы вы передали объект Object(или подтип объекта Function, Array, etc), тогда параметру присваивается ссылка на этот объект. напрмер:let o = {a: 3}; //ссылка на объект
function foo(obj) {
  //obj это другая ссылка на этот же объект
  obj = {a:666} //теперь obj указывает на совсем другой объект
}
foo(o)
o // {a:3}
Т.е в js нельзя вручную указать хотите ли вы ссылку или копию (как в C++ например), здесь ссылка/копия значения определяется типом данных.
Если с англ. норм то почитайте: раздел Value vs. Reference
Использовать ссылочные типы.let bufer = {};
function foo(buf, a, b) {
    buf.foo_ans = a + b;
}
function bar(buf, a, b) {
    buf.bar_ans = a * b;
}
foo(bufer, 3, 5);
bar(bufer, 3, 5);
console.log(bufer); //{foo_ans: 8, bar_ans: 15}