这种技术在 JavaScript 库中很常见。它围绕文件的全部内容创建了一个闭包,从而创建了一个私有命名空间,从而有助于避免不同 JavaScript 模块和库之间潜在的名称冲突。立即调用该函数,以便为命名空间(库名称)分配函数的返回值。
const myLibrary = (function() {
var privateVariable = 2
return {
publicMethod: () => privateVariable
}
})()
privateVariable // ReferenceError
myLibrary.publicMethod() // 2
JavaScript 中唯一不等于自身的值是什么?
NaN(Not-a-Number) 是与任何比较运算符进行比较时唯一不等于自身的值。NaN通常是无意义的数学计算的结果,因此将两个NaN值视为相等是没有意义的。
递归是一个过程的重复应用。在 JavaScript 中,递归涉及重复调用自身直到达到基本条件的函数。基本条件跳出递归循环,否则函数将无限期地调用自身。当处理包含嵌套层数未知的数据结构时,递归非常有用。<