Мне было интересно, можем ли мы объявить переменную в одном IIFE и вернуть ее, но сделать ее доступной для другого конкретного IIFE? Вот пример!
Итак, у меня есть
const iife1 = (()=>{
const x = 10;
return x
})()
const iife2 = (()=>{/* MAKE X AVAILABLE ONLY IN THIS FUNCTION */})()
const iife3 = (()=>{/* HERE X CANNOT BE CALLED */})()
Возможно, вы бы просто сказали не передавать переменную x в iif3 в качестве аргумента, но мне было интересно, есть ли условный способ, которым мы можем достичь этого при возврате переменной из iif1, чтобы iif1 знал, для каких функций он возвращает свои свойства или методы, прежде чем на самом деле вернулся!
Моя цель - создать IIFE, в котором я объявлю все переменные, которые я собираюсь использовать в своем проекте. Затем для каждой переменной я хочу иметь надлежащее условие, чтобы, когда IIFE с переменными возвращал функцию, уже было решено, в какой области будут отправлены переменные для использования! Я не знаю, имеет ли этот подход смысл, но, как всегда говорят, я стараюсь не заполнять глобальный охват.
Codepen