如何将外部范围变量传递给foreach函数

时间:2017-12-22 14:07:19

标签: javascript ecmascript-6

我希望domMatch在每个箭头函数内部可见,如果函数体可以看到外部作用域的this,在我的完整情况下是一个类,那么也应该有一种方法来传递domMatch对象。

            let tr = document.createElement("tr");

            let domMatch = {};

            domMatch.status = this.status;
            ... other props


            Object.getOwnPropertyNames(domMatch).forEach(function (domMatchField, a, b, domMatch) { // domMatch is undefined
                let cell = tr.insertCell(-1);

                cell.innerText = domMatch[domMatchField];

            });

1 个答案:

答案 0 :(得分:2)

问题是你试图通过forEach中的回调函数传递变量domMatch - 这个函数接受(最多)3个参数,所以第四个参数当然是{{1 }}

只需省略该参数,undefined应该在内部范围内可用。

domMatch