gpt4 book ai didi

javascript - 如何分配给函数的成员?

转载 作者:行者123 更新时间:2023-11-30 13:24:11 25 4
gpt4 key购买 nike

因为函数是一等对象,所以应该可以赋值给它们的成员。

我认为 arguments.callee 这样做是否正确?

还有其他方法可以设置这些字段吗?

如何在第一种情况下设置字段

function something1() {
arguments.callee.field = 12;
}

alert(something1.field); // will show undefined
something1();
alert(something1.filed); // will show 12

something2 = function() {
arguments.callee.field = 12;
};

alert(something2.field); // will show undefined
something2();
alert(something2.field); // will show 12

更新 1

我的意思是在函数运行时如何从函数内部访问成员。

最佳答案

您不需要使用 arguments.callee 来引用具有名称的函数;你可以只使用这个名字。当您使用

声明函数时,自然会出现这种情况
function name(...) { ... }

语法;但即使在函数表达式中,您也可以提供一个临时名称:

(function temp_name(...) { ... })(arg);

所以,如果你想在函数内部设置属性,你可以这样写:

function something1() {
something1.field = 12;
}

alert(something1.field); // will show undefined
something1();
alert(something1.field); // will show 12

something2 = function something2() { // note the second "something2"
something2.field = 12;
};

alert(something2.field); // will show undefined
something2();
alert(something2.field); // will show 12

关于javascript - 如何分配给函数的成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9102942/

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