JavaScript'теги spread оператору
ES6'да ... деген атайын оператор пайда болду,
анын аты spread.
Spread оператору массивдин алдында турганда, ал массивди жеке маанилерге бөлүп, массивди функцияны чакыруу үчүн керектүү параметрдердин топтомуна айландырат.
Албетте, бул түшүнүксүз укмуштуудай угулат, ошондуктан
жөнөкөй мисалды карап көрөлү. Бизде 3 параметр
кабыл алган жана алардын суммасын кайтара турган функция бар дейли:
function func(num1, num2, num3) {
return num1 + num2 + num3;
}
Бизде үч элементтен турган массив да бар дейли:
let arr = [1, 2, 3];
Белгисиз, биз бул массивди функцияга параметр катары төпөй берсек болбойт, мындайыча:
let arr = [1, 2, 3];
func(arr);
Анткени бул учурда бүт массив функциянын биринчи параметрине түшөт, ал эми бул параметрге сан берүү керек (жана башка параметрлерге дагы).
Албетте, төмөнкүдөй кылса болот:
let arr = [1, 2, 3];
func(arr[0], arr[1], arr[2]);
Бирок дагы жеңил жолу бар - spread операторун колдонуу:
let arr = [1, 2, 3];
func(...arr);
Өзгөрмөнүн болушу милдеттүү эмес - spread'ти түздөн-түз массивге колдонсо болот:
func(...[1, 2, 3]);
Массив берилген:
let arr = [1, 2, 3, 4, 5];
Функция да берилген:
function func(num1, num2, num3, num4, num5) {
return num1 + num2 + num3 + num4 + num5;
}
Көрсөтүлгөн функциянын жардамы менен массивдин элементтеринин суммасын табыңыз.