使用匿名函数进行 JavaScript 封装
javascriptfront end technologyobject oriented programming
面向对象编程语言允许使用私有字段隐藏数据。它们使用这些字段来隐藏类的内部结构。在 JS 中,没有这样的内置支持来隐藏/封装内部工作。
我们有匿名函数,可以在 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 不再污染全局命名空间。