ПредишенСледващото

Наскоро обсъждахме как можете да зададете тази функция, за да аргументи по подразбиране. Това ни дава известна гъвкавост в работата си с аргументи. Но какво, ако имаме нужда от функция, която използва всеки произволен брой аргументи? Например, ние се нуждаем от функция, която връща сумата от всички аргументи преминали. Как може да се реши този проблем?

Въпреки факта, че този обект не е масив, тя се държи като масив. Аргументите включва всеки аргумент на функцията.

Сега, ние сме запознати с обектите аргументи. ние можем лесно да се реализира желаната функция, която ще работи с произволен брой аргументи подадени:

Един важен проблем, който възниква, когато се занимават с аргументи - обектът не е вярно масив. Можем да видим това, като използвате следния код:

Така че това не е масив. Има ли някаква разлика в употреба?

За съжаление, има разлика. Аргументи не поддържат стандартните методи масив като тласък. поп. парче. indexOf или сортиране.

Това може да ви попречи, особено ако премине аргументи за всяка функция очаква масив.

Решението на този проблем legkoo да се използва, но е малко трудно да се разбере.

Нека разгледаме следния код:

  1. Ние създаваме празен масив.
  2. Ние използваме метода на парче от масив.
  3. Ние използваме метода на повикване, за да се справят с парчето аргументите обект, а не празен масив.

метод парче Обадете се, без да уточнява индекс, от който трябва да започне обработка ни връща към първоначалния масив. И това е, което ние се нуждаем: имаме масив, съдържащ всички аргументи подадени на функцията.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!