Условие
Напиши класс StringBuilder. На вход он получает один параметр - строку, которую записывает в свойство _value
.
Добавь классу следующий функционал:
value
- возвращает текущее значение поля _value
;append(str)
- получает параметр str
(строку) и добавляет ее в конец _value
;prepend(str)
- получает параметр str
(строку) и добавляет ее в начало value;pad(str)
- получает параметр str
(строку) и добавляет ее в начало и в конец _value
.const builder = new StringBuilder('.');
builder.append('^');
console.log(builder.value); // '.^'
builder.prepend('^');
console.log(builder.value; // '^.^'
builder.pad('=');
console.log(builder.value; // '=^.^='
Вот мое решение:
'use strict';
class StringBuilder {
constructor(value) {
this.value = value;
}
get value() {
return this.value;
}
append(str) {
this.value.push(str);
}
prepend(str) {
this.value.unshift(str);
}
// додає елемент на поч і в кін
pad(str){
this.value.unshift(str);
}
}
const builder = new StringBuilder('.');
// const value = builder.value();
// console.log(this.value);
builder.append('^');
console.log(builder.value); // '.^'
builder.prepend('^');
console.log(builder.value; // '^.^'
Скорее всего, тебе сказали, что строка - это массив символов) Но это не значит, что строка поддерживает те же методы, что и массив)
class StringBuilder {
constructor(value) {
this.value = value;
}
get val() {
return this.value;
}
set val(value) {
this.value = value;
}
append(str) {
this.value += str;
}
prepend(str) {
this.value = str + this.value;
}
// додає елемент на поч і в кін
pad(str) {
this.value = str + this.value + str;
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Помоги пожалуйста переделать, чтобы сумма считалась не по значениям value выбранных option, а по значениям data-col
У меня в реакт компоненте, рендерется определенный список из массива с помощью map()Соответственно в DOM они отображаются последовательно, соответсвтенно...
Есть ли возможность избежать дублирование в AJAX запросе