Сейчас изучаю Js по учебнику https://learn.javascript.ru.
Вопрос по функциям:
var sum = new Function('a,b', ' return a+b; ');
var result = sum(1, 2);
alert( result ); // 3
То есть, функция создаётся вызовом new Function(params, code):
params Параметры функции через запятую в виде строки. code Код функции в виде строки. Таким образом можно конструировать функцию, код которой неизвестен на момент написания программы, но строка с ним генерируется или подгружается динамически во время её выполнения.
Я не понял, как код функции неизвестен на момент написания программы, если во втором параметре указано ' return a+b; '
? Или имеется в виду, что можно оставить данный параметр пустым, ''?
Так как в данном случае в качестве тела функции передается обычная строка, до передачи она может быть собрана как угодно, на основании переменных, значение которых неизвестно в момент написания.
Например:
function calc(x, expr) {
var func = new Function('x', `return ${expr}`);
console.log(func(x));
}
<input type="text" id="expr" value="x*x" /> <br/>
<input type="text" id="x" value="2" /> <br/>
<button onclick="calc(x.value, expr.value)">Calc</button>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
fetch (полифил whatwg-fetch) запрос работает во всех браузерах (даже IE) но не работает в Firefox:
Как разбить страницу на отдельные файлы? тоесть чтоб хэдер, футер и др хранились в отдельных файлах и при необходимости подключались к страницеВозможно...
Добрый день! Начинаю разбираться с PHP столкнулся с проблемой:
ЗдравствуйтеЯ делаю систему оповещений и есть задача сделать следующее: узнать, когда пришло уведомление