Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 这句话的意思是什么;all=Promise.all.bind(Promise)“;?_Javascript_Binding_Promise - Fatal编程技术网

Javascript 这句话的意思是什么;all=Promise.all.bind(Promise)“;?

Javascript 这句话的意思是什么;all=Promise.all.bind(Promise)“;?,javascript,binding,promise,Javascript,Binding,Promise,我知道bind会将此方法绑定到正在传递的对象。但是,我不明白的是,为什么我们要将类名传递给绑定 我从一位专家那里得到的一个答案是,“这是为了使函数‘独立’”,这也是我不理解的。我可能非常愚蠢,不理解一个语句,并且对它发疯,但是,有人能解释一下吗?它不是一个“类名”,而是一个对象。(特别是函数;函数是JavaScript中的对象。更具体地说,是构造函数。) Promise.all(…)在Promise对象上查找all属性,并调用all,将this设置为Promise。因此,要使用all(…)实现这

我知道
bind
会将此方法绑定到正在传递的对象。但是,我不明白的是,为什么我们要将类名传递给绑定

我从一位专家那里得到的一个答案是,“这是为了使函数‘独立’”,这也是我不理解的。我可能非常愚蠢,不理解一个语句,并且对它发疯,但是,有人能解释一下吗?

它不是一个“类名”,而是一个对象。(特别是函数;函数是JavaScript中的对象。更具体地说,是构造函数。)

Promise.all(…)
Promise
对象上查找
all
属性,并调用
all
,将
this
设置为
Promise
。因此,要使用
all(…)
实现这一点,我们需要绑定函数,以便
这个
始终是
承诺
,即使我们以不同的方式调用它。这就是
all=Promise.all.bind(Promise)
所做的

如果我们只是做了
all=Promise.all
,那么当我们调用
all(…)
时,
这个
在调用过程中不会引用
Promise
(它将是松散模式下的全局对象或严格模式下的
未定义的
all
引用承诺的构造函数(
Promise

我知道
bind
会将此方法绑定到正在传递的对象

让我们换一种方式:
a=b.bind(c)
返回一个新函数(
a
),该函数在调用时将调用
b
,确保在调用过程中将
this
设置为
c
。结果称为绑定函数,因为它的
this
值绑定到它

另见:

    • 它不是“类名”,而是一个对象。(特别是函数;函数是JavaScript中的对象。更具体地说,是构造函数。)

      Promise.all(…)
      Promise
      对象上查找
      all
      属性,并调用
      all
      ,将
      this
      设置为
      Promise
      。因此,要使用
      all(…)
      实现这一点,我们需要绑定函数,以便
      这个
      始终是
      承诺
      ,即使我们以不同的方式调用它。这就是
      all=Promise.all.bind(Promise)
      所做的

      如果我们只是做了
      all=Promise.all
      ,那么当我们调用
      all(…)
      时,
      这个
      在调用过程中不会引用
      Promise
      (它将是松散模式下的全局对象或严格模式下的
      未定义的
      all
      引用承诺的构造函数(
      Promise

      我知道
      bind
      会将此方法绑定到正在传递的对象

      让我们换一种方式:
      a=b.bind(c)
      返回一个新函数(
      a
      ),该函数在调用时将调用
      b
      ,确保在调用过程中将
      this
      设置为
      c
      。结果称为绑定函数,因为它的
      this
      值绑定到它

      另见:


      (嘎!如果最后一段似乎把
      a
      b
      混在一起,点击刷新。)好的,我想我现在明白了!所以如果我们从父函数“提取”函数,我们应该确保将其
      this
      绑定到适当的对象,这样我们就不会得到任何意外的结果。在这种情况下,我们将
      所有
      函数
      这个
      分配给它的实际父对象,这样它就会变得自治。(嘎!如果最后一段似乎有
      a
      b
      混淆,请点击刷新。)好的,我想我现在找到了!所以如果我们从父函数“提取”函数,我们应该确保将其
      this
      绑定到适当的对象,这样我们就不会得到任何意外的结果。在这种情况下,我们将
      所有
      函数
      分配给它的实际父对象,以便它将成为自治的。