gpt4 book ai didi

javascript - 函数表达式中的私有(private)变量

转载 作者:行者123 更新时间:2023-11-30 10:15:41 26 4
gpt4 key购买 nike

为什么这不起作用?

(function () {
var cache = ['hii'];
return function add (fn) {
if (!cache.contains(fn)) {
cache.push(fn);
return true;
}
return false;
};
}());

add('dd');

我收到一条错误消息:Uncaught referenceError: add is not defined.

最佳答案

外部匿名函数返回内部 add 函数,但返回值未分配给任何东西,因此您无法访问它。

(请注意,为 add 命名并不意味着它可以通过该名称使用;因为它是 return 语句的一部分,所以它变成了 function expression令人困惑的是,它与函数声明具有相同的语法,但不会导致创建指向该函数的变量。)

尝试将第一行更改为如下所示:

add = (function () {

关于javascript - 函数表达式中的私有(private)变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23840488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com