我很好奇为什么我们在这段代码中使用cache [n]

Dic*_*ens 1 javascript

我是JS新手,遇到了以下代码:

let cache={};

function memoizedAddTo80(n) {
    if (n in cache) {
        return cache[n]
    } else {
        cache[n]= n+80;
        return cache[n]
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是什么是cache [n] ?,我的意思是,为什么我们在缓存后使用[n]。是否cache [n]等于cache.n或?

Spo*_*ser 6

n是一个变量。考虑:

var n = "foo";
return cache[n];
Run Code Online (Sandbox Code Playgroud)

这相当于 cache.foo