gpt4 book ai didi

javascript - 富 || (foo = this.foo) 它是做什么的?

转载 作者:行者123 更新时间:2023-11-30 07:09:51 28 4
gpt4 key购买 nike

我想知道这一行的作用:

foo || (foo = this.foo)

在下面的函数定义中

someFunction: function(foo)  
{
foo || (foo = this.foo);
...
}

最佳答案

这可能更常见地写成:

someFunction: function(foo)  
{
foo = foo || this.foo;
// do something with foo
}

它所做的只是将 foo 参数设置为上下文的 foo 实例变量,如果:

  • someFunction 不带参数调用
  • someFunction 使用 falsy 参数调用,例如 false、空字符串、0、null 或未定义。

举个例子,假设 someFunction 是在对象字面量中定义的,如下所示:

var myObject = {
foo: "default value of foo",
someFunction: function(foo)
{
foo = foo || this.foo;
// do something with foo
}
}

这样,someFunction 的参数 foo 会在需要时回退到默认值。

关于javascript - 富 || (foo = this.foo) 它是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12890190/

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