"12"
и "34"
, то получится строка "1234"
. А если попытаться сложить числа 12 и 34, то получится число 46 Спасибо за развернутые вопросы. Как раз не мог понять в чем мои косяки.
Постараюсь ответить как я рассуждал при написании.
1. Обратил внимание что функция асинхронная и создание блока заимает время.
2. Действительно, не зачем, переписал код. (Хотел иметь возможность получить последний созданный блок)
3. Действительно, не зачем, переписал код с использованием this. (Когда писал думал что нужен экземпляр для использования методов, затупил)
4. тоже что и в 3.
5. Он писался в свойство, последнего созданного блока, по сути тоже не зачем, переписал.
class Block {
constructor(data) {
if (!data.type) {
throw new Error('No type passed in Block constructor!');
}
this.color = data.color || '';
this.type = data.type;
}
prepareForSending() {
this.color = this.color.toUpperCase();
return this;
};
}
function send(data) {
fetch('http://test.com', {
method: 'POST',
body: JSON.stringify(data),
})
.catch(console.log)
}
function initSending(data) {
setInterval(() => {
send( data );
}, 10000);
}
const block = new Block({ type: 'brick', color: 'red' });
initSending( block.prepareForSending() );