Возможно ли передать данные из одного файла в другой файл через JavaScript?
Я не буду спрашивать, зачем вам это. Просто расскажу, как я придумал это сделать.
Файл "a.html":<html>
<head>
	<title>Document</title>
</head>
<body>
	<form action="b.html" method="GET">
		<input type="text" name="variable1">
		<input type="text" name="variable2">
		<input type="submit">
	</form>
</body>
</html>
В форме указываем, что будет использоваться метод GET (почитайте в интернетах, если не знаете, что это такое и как это работает). Методом GET значения передаются прямиком в ссылке (ссылка вида "example.com?var1=Hello&var2=World", где жирным выделено название переменной, а курсивом — ее значение). НО! GET имеет ограничение в длине передаваемых данных (об этом тоже почитайте в интернетах), имейте это в виду.
У элементов input есть параметр name. Он содержит имя переменной, отправляемой в GET запросе, а ее значение автоматически берется из того, что вы ввели в input.
Так-с, при отправке формы у нас откроется страница b.html<html>
<head>
	<title>Document</title>
</head>
<body>
	<script type="text/javascript">
		function getGETParameters(paramStr){
			return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
		}
		console.log(getGETParameters(window.location.search.substr(1)));
	</script>
</body>
</html>
Когда она откроется, посмотрите на строку поиска/адреса, там вы увидите, как примерно выглядит GET-запрос. Потом загляните в консоль и увидите, что там отображается массив (или объект). Я думаю, вы поймете, для чего он нужен.
Немного изменим файл b.html<html>
<head>
  <title>Document</title>
</head>
<body>
  <script type="text/javascript">
    function getGETParameters(paramStr){
      return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
    }
    let variables = getGETParameters(window.location.search.substr(1));
    console.log(variables["variable1"]); // эта строка выведет в консоль то, что Вы вводили в первый input
  </script>
</body>
</html>
для js используй куки или сессию, но думаю лучше бы переменную передавать с помощью php методом post