使用匿名函数的JavaScript封装

面向对象的编程语言允许使用私有字段隐藏数据。他们使用这些来隐藏类的内部。在JS中,没有这样的构建支持来隐藏/封装内部工作。

我们有Anonymous函数,可以为您封装JS。让我们看一个例子-

示例

const HIDDEN_CONST = 100;
function fnWeWantToHide(x, y) {
   return (x + y) * HIDDEN_CONST
}
console.log(fnWeWantToHide(1, 2))

如果我们将上面的代码公开地写出来,则此代码将使用这些名称污染全局命名空间。相反,我们可以做的是将其包装在IIFE(立即调用的函数表达式)中。例如,

示例

(() => {
const HIDDEN_CONST = 100;
function fnWeWantToHide(x, y) {
   return (x + y) * HIDDEN_CONST
}
console.log(fnWeWantToHide(1, 2))
})()

现在,这些变量隐藏在函数表达式中。但是函数和const不再污染全局命名空间。