Как из функции вынести значение переменной которая была заданна через параметры?
var formSPStatusColor = 0;
var formSPStatusSize = 0;
var formSPStatusQuantity = 0;
function funFormSP(el, status) {
if (status == 0) {
document.getElementsByClassName(el)[0].style.transform = 'rotateX(0deg)';
return status = 1;
} else {
document.getElementsByClassName(el)[0].style.transform = 'rotateX(90deg)';
return status = 0;
}
}
<div onclick="funFormSP('selectedColorActive', formSPStatusColor)">Нажми</div>
При нажати, передаётся класс элемента и статус нажатий (1й раз нажат или 2й). после срабатывания статус должен принимать значение "1". Он это и делает, но я не знаю как вынести его за пределы функции, что бы он присвоился переменной которая была указанна в параметрах
Ответы (1 шт):
Отлично! Если я вас правильно понял то вам всего то на всего нужно было глобально изменить значение переменой переданной в параметры. И я вас поздравлю! Это невозможно! Мы можем попытаться сделать это немного иначе:
через объект:
let varible = { value : undefined } function test(obj){ obj.value = 0 } test(varible)
объекты как мы знаем это всего лишь набор ссылок на ячейки памяти и тут свойство value общее у объекта varible и obj.
с помощью
return:let varible = 0; function test(value){ return value } varible = test(varible)
и если вам нужно изменять значение переменой переданной в параметрах вы что-то делаете не так