arteqrt
@arteqrt
Почти не начинающий програмист

Как сократить скрипт, если возможно?

function resize() {
	let l1 = document.querySelector('#l1').value;
	let l2 = document.querySelector('#l2').value;
	let l3 = document.querySelector('#l3').value;
	let l4 = document.querySelector('#l4').value;
	
	document.querySelector('#lt1').value = l1;
	document.querySelector('#lt2').value = l2;
	document.querySelector('#lt3').value = l3;
	document.querySelector('#lt4').value = l4;

	document.querySelector('.block').style.borderRadius = l1+'px '+l2+'px '+l3+'px '+l4+'px ';
}
  • Вопрос задан
  • 195 просмотров
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
Заменить id на классы:

const values = Array.from(document.querySelectorAll('.l'), n => n.value);
document.querySelectorAll('.lt').forEach((n, i) => n.value = values[i]);
document.querySelector('.block').style.borderRadius = values.map(n => `${n}px`).join(' ');
Ответ написан
Комментировать
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
function resize() {
  document.querySelector('.block').style.borderRadius = Array.from({length: 4}, (_, i) => {
    const n = i + 1;
    return (document.getElementById('lt' + n).value = document.getElementById('l' + n).value);
  }).join('px ') + 'px';
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
twobomb
@twobomb
document.querySelector('.block').style.borderRadius = [1,2,3,4].map(e=>document.querySelector(`#l${e}`).value+"px").join(" ");
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы