recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Comment utiliser la fonction Call en JS?

var currying = function(fun) {
      //底下这句代码是什么意思?
    var args = Array.prototype.slice.call(arguments, 1);
      return function() {
         //底下这句代码也不怎么清楚
          var _args = args.concat(Array.prototype.slice.call(arguments));
          return fun.apply(null, _args);
      };
}

Pouvez-vous expliquer ce que signifie le code de cette fonction ? J'ai essayé la méthode d'appel et la méthode slice de Baidu, mais je n'ai pas pu comprendre quand elles ont été combinées et que l'objet arguments de la fonction a été ajouté. Je suis un débutant, donc je ne comprends pas très bien certains concepts

.
我想大声告诉你我想大声告诉你2759 Il y a quelques jours930

répondre à tous(2)je répondrai

  • 迷茫

    迷茫2017-07-05 10:56:45

    简单的例子
         var aa=[1,2,3],bb={0:1,1:2,2:3,length:3};
         aa.slice(1)//[2,3],此时的slice上的this就是指的aa的
         //bb是对象没有slice方法,又想得到[2,3]该怎么办?
         aa.slice.call(bb,1)//[2,3]
        
         
         

    répondre
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-07-05 10:56:45

    Oubliez Baidu, allez simplement sur mdn https://developer.mozilla.org...

    var args = Array.prototype.slice.call(arguments, 1);

    arguments est un objet de type tableau, pas un tableau, et n'a pas nécessairement la méthode slice du tableau, donc la méthode call est utilisée pour permettre à l'objet arguments d'appeler la méthode slice comme un tableau.

    répondre
    0
  • Annulerrépondre