Ну допустим у меня есть:
function A(){
let x = [1,2]
........
С(х)
B(x)
}
function B(x){
x = что то там
}
function С(x){
let arr2 = x;
return arr2.slice();
}
как мне теперь вынуть первоначальный х (вторая строчка) за пределы функций? Я попыталась сделать функцию С, перенести туда и передать в другую переменную, но это по сути бесполезно, так как просто вызвать потом C() я не могу, так как мне нужно ввести аргумент х который дается в первой функции. Запустить все функции сначала я тоже не могу, так как в реальности у меня этот х рандомно генерируется, то есть если запустить функцию заного этого будет уже другой массив. В данном случае никак ни вынуть?
з.ы. я пробовала также задать х заранее в глобале, по принципу:
let x = [];
function A(x){
...}
но изменения внесенные в массив в функции никак не отразятся на изначальном, он также навсегда останется пустым.