跳到主要内容

开发技巧

使用 IIFE 提升性能

export const env = (options) => {
if (typeof window !== 'undefined') {
console.log(`hello window${options}`)
} else {
console.log(`hello node ${options}`)
}
}

export const env1 = (() => {
if (typeof window !== 'undefined') {
return (options) => {
console.log(`hello window${options}`)
}
} else {
return (options) => {
console.log(`hello node ${options}`)
}
}
})()

通常我们会写第一种方法,但是会发现环境在第一次运行时就已经确定了,不用每次调用都需要判断,所以我们可以使用 IIFE 来优化它,这样不论 env1 函数调用多少次,都不会重复的进行判断.