вывести значение функции за свои пределы
Подскажите пож, как вынести значение переменной "pos" за пределы функции, в которой он находиться? Глобально объявлять нельзя. Пробовал делать через return, и объявлять функцию. Не помогает. Помогите, пожалуйста. Html структуру отображать не стал. В этом нет необходимости.
$(document).ready(function () {
function first() {
$('.taglist:checked').each(function (i) {
let pos = $(event.target).closest('body').find('.list-textbox-item .taglist').index($(event.target).closest('.list-textbox-item .taglist'));
return pos;
});
//Вывести значение переменной 'pos' необходимо в текущую область.
$('.list-textbox-item textarea:eq(pos)').val(allVals).attr('rows', allVals.length);
}
});
Ответы (1 шт):
Автор решения: Vasily
→ Ссылка
Вы можете использовать IIFE чтобы ограничить scope переменной let:
(function($) {
$(document).ready(function () {
let pos
function first () {
$(".taglist:checked").each(function (i) {
pos = $(event.target).closest("body").find(".list-textbox-item .taglist").index($(event.target).closest(".list-textbox-item.taglist"))
})
}
// Вывести значение переменной "pos" необходимо в текущую область.
$(".list-textbox-item textarea:eq(pos)").val(allVals).attr("rows", allVals.length)
})
})(jQuery)
Или же воспользоваться замыканием.