Kintamasis Kintamasis argumentų skaičius javascript funkcijos argumente

Ar galiu perduoti kintamą skaičių argumentų „Javascript“ funkcijai? Turiu mažai žinių apie js. Noriu įgyvendinti kažką panašaus:

  function CalculateAB3(data, val1, val2, ...) { ... } 
6
28 окт. nustatė Navyah spalio 28 d 2013-10-28 10:16 '13, 10:16, 2013-10-28 10:16
@ 3 atsakymai

Savo funkcijoje galite perduoti kelis parametrus ir pasiekti juos per argumentų kintamąjį. Žemiau yra funkcijos, kuri grąžina visų jame nurodytų parametrų sumą, pavyzdys.

 var sum = function () { var res = 0; for (var i = 0; i < arguments.length; i++) { res += parseInt(arguments[i]); } return res; } 

Galite jį pavadinti taip:

 sum(1, 2, 3); // returns 6 
15
28 окт. atsakymas pateikiamas aga 28 okt. 2013-10-28 10:24 '13, 10:24 am 2013-10-28 10:24

Žinoma, paprastas atsakymas į jūsų klausimą

Bet asmeniškai norėčiau perduoti objektą, o ne n parametrų skaičių

Pavyzdys:

 function CalculateAB3(obj) { var var1= obj.var1 || 0; //if obj.var1 is null, 0 will be set to var1 //rest of parameters } 

Čia || yra logiškas operatorius, kur rasite daugiau informacijos apsilankę http://codepb.com/null-coalescing-operator-in-javascript/

A Ar „JavaScript“ yra „nulinis sutelkimas“ operatorius? yra geras skaitymas

3
28 окт. Satpal 28 okt. 2013-10-28 10:24 '13, 10:24 am 2013-10-28 10:24

Taip, galite tai padaryti. Naudokite kintamąjį „argumentai“, pavyzdžiui:

 function test() { for(var i=0; i<arguments.length; i++) { console.log(arguments[i]) } } 
0
28 окт. atsakymas pateikiamas uzumaxy 28 okt. 2013-10-28 10:21 '13, 10:21, 2013-10-28 10:21

Žr. Kitus klausimus, susijusius su „ žymių arba „ Užduoti klausimą“