js 命名空间

什么是命名空间?
命名空间是空间中一组实体、变量、函数和对象的封装。
JavaScript 有多种方法可以实现这一点,查看示例可以让这个概念更容易理解。
创建命名空间最简单的方法是创建对象:
const car = {
start: () => {
console.log('start')
},
stop: () => {
console.log('stop')
}
}
start 和 stop 在 car 命名空间中命名:car.start() 和 car.stop()。
它们不会污染全局变量。
为什么这很重要?
此方法还可以在对象创建后为其分配变量
const car = {}
car.start = () => {
console.log('start')
}
car.stop = () => {
console.log('stop')
}
但由于参考了汽车目的地,仍然可以从外部访问它们。
从外部完全隐藏代码的最佳方法是将其包装在一个块中,该块是用大括号括起来的代码的一部分,例如 if 或 for 块,但也可以是形成的单独块,例如: :
{
const start = () => {
console.log('start')
}
const stop = () => {
console.log('stop')
}
}
这两个功能现在在块外不可用。
但是你必须小心,始终使用基于块的let或const。
使用 var“泄漏”到其块之外。
要解决这个问题,您可以使用“旧”的 pre-let/const 方法的函数:
(function() {
var start = () => {
console.log('start')
}
const stop = () => {
console.log('stop')
}
})()
现在 start 和 end 无法从外部访问,即使 start 被分配给使用参数 var 定义的变量。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
上一篇:ES2020 JavaScript 功能 下一篇:js chaincall
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。