Ответ 1
Изменить: эта половина считает, что вы используете EJS на стороне сервер
1) Вы можете передать значение переменной ejs в переменную Javascript
<% var test = 101; %> // variable created by ejs
<script>
var getTest = <%= test %>; //var test is now assigned to getTest which will only work on browsers
console.log(getTest); // successfully prints 101 on browser
</script>
просто создайте переменную ejs и присвойте значение внутри тега script var getTest
Пример: var getTest = <%= test %>;
2) Вы не можете передать значение переменной javascript переменной ejs
Да, вы не можете: если он на сервере.
Почему:
Шаблон EJS будет отображаться на сервере до запуска Javscript (он будет запущен в браузере), поэтому на сервер не возвратится сервер и попросите некоторые предыдущие изменения на странице, которая уже отправлена на страницу браузер.
Изменить: эта половина считает, что вы используете EJS на стороне Клиент
3), если EJS находится на стороне клиента и передает переменную EJS в javascript
Вышеприведенный ответ по-прежнему будет работать, но вам потребуется загрузить script в шаблон EJS, а не script, загруженный перед созданным шаблоном (в этом случае он будет из- конечно, не будет действительным javascript).
4), если EJS находится на стороне клиента и передает переменную javascript в EJS
Мне жаль, что я сам не пробовал этот случай, но я действительно жду, если кто-то ответит на этот случай