如何导出 javascript 中的变量?

How to export a variable in javascript?

我想将一个名为 recettesFromIngredients 的变量从 search-box.js 导出到 ingredients-logic.js

所以更准确的说recettesFromIngredients一开始是一个空数组的变量

但是我在这里填充了这个空数组:

function ingredients(enteredValue) {
    for (let i = 0; i < recettes.length; i ++) {
        for (let d = 0; d < recettes[i].ingredients.length; d++) {
            if ( recettes[i].ingredients[d].ingredient.toLocaleLowerCase().includes(enteredValue)) {

                recettesFromIngredients.push(recettes[i]); // <-----------

            };
        };
    };
};

所以我想做的是:一旦我填充了这个数组,我就想导出它。

这就是我尝试做的

export {recettesFromIngredients} // at the bottom of the file after the every function is called

在控制台中我没有任何错误 export/import 似乎没问题但是当我在导入文件中控制台记录此 Var 时我得到一个空数组而在导出文件中数组已填充随心所欲!

我在 ingredients-logic.js 中得到一个空数组可能是什么问题?我应该从文件中的另一个位置还是以其他方式导出?

为什么不尝试导出函数呢?然后你可以在另一个文件中调用该函数,该函数将 return 填充数组。 您还必须 return 函数调用中的数组。 您的代码应如下所示:

export default function ingredients(enteredValue) {
let recettesFromIngredients = [];
    for (let i = 0; i < recettes.length; i ++) {
        for (let d = 0; d < recettes[i].ingredients.length; d++) {
            if ( recettes[i].ingredients[d].ingredient.toLocaleLowerCase().includes(enteredValue)) {

                recettesFromIngredients.push(recettes[i]); // <-----------

            };
        };
    };
return recettesFromIngredients 
};

在另一个文件中导入函数,然后 调用函数

const x= ingredients(enteredValue)

现在 const x 有数组