У меня есть этот пример кода:
let test = {
result: '',
bolder: function (str = this.result) {
this.result = '<b>' + str + '</b';
return test;
},
italic: function (str = this.result) {
this.result = '<i>' + this.result + '</i';
return test;
},
}
console.log(
test.bolder('text').italic()
)
/*
RESULT:
{
result: '<i><b>text</b</i',
bolder: [Function: bolder],
italic: [Function: italic]
}
EXPECTED:
'<i><b>text</b</i'
*/
Когда я передаю строку в функцию 'bolder', добавьте некоторый переносящий текст (возвращаемый результат должен быть похож на ' text '), а затем мне нужно, чтобы результат был передан следующей связанной функции 'itali c', чтобы он мог взять ' текст ' и добавить больше вещей, таких как текст </ b > ', затем верните это новое значение в следующую функцию и так далее. Если в качестве параметров не передается значение, то я предполагаю, что мне нужно отформатировать значение в «результате», поэтому это значение по умолчанию.
Но проблема заключается в следующем: Когда я пытаюсь зарегистрировать значение, если возвращается весь объект 'test' со всеми функциями и прочим, а не отформатированная строка ' text '.
Как мне этого добиться?