面试题答案
一键面试在JavaScript中,函数可以作为命名空间来有效避免全局变量冲突,这是因为函数内部定义的变量和函数都在其自身作用域内,不会污染全局作用域。
示例代码如下:
// 创建一个自执行函数作为命名空间
(function () {
// 在命名空间内部定义变量
let localVar = 'This is a local variable';
// 在命名空间内部定义函数
function localFunction() {
console.log(localVar);
}
// 调用内部函数
localFunction();
})();
// 这里尝试访问 localVar 或 localFunction 会报错,因为它们不在全局作用域
// console.log(localVar); // 报错:localVar is not defined
// localFunction(); // 报错:localFunction is not defined