Я создаю UrlParamClass, и я хочу знать, как я могу добавить значение. См. Этот пример:
class UrlParam {
append = (key, value) => {
return '&${key}=${value}'
}
}
let param = new UrlParam()
param.append('module','clothes')
param.append('module','shoes')
param.append('module','gloves')
console.log(param) //i want to see: &module=clothes&module=shoes&module=gloves
Если вы используете Class
, то вы можете использовать attribute
внутреннего экземпляра в своем классе.
Инициализируйте его в своем constructor
и продолжайте изменять его в своем методе append
:
class UrlParam {
constructor(value) {
this.value = value;
}
append(key, value){
this.value += '&${key}=${value}'
}
}
let param = new UrlParam('');
param.append('module', 'clothes')
param.append('module', 'shoes')
param.append('module', 'gloves')
console.log(param) //i want to see: &module=clothes&module=shoes&module=gloves
Если вы собираетесь писать класс, я бы пошел на такой подход:
class UrlParam {
constructor() {
this.params = [];
}
append(key, value) {
this.params.push({key, value});
}
toString() {
return this.params
.map(({key, value}) => '&${key}=${value}')
.join('');
}
}
let param = new UrlParam();
param.append('module', 'clothes')
param.append('module', 'shoes')
param.append('module', 'gloves')
console.log(param.toString());
toString
который бы дал вам то, что вы хотите.