⊗jsPmMCPP 499 of 505 menu

Подаване на параметри в модул чрез затваряния в JavaScript

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

;(function(arg1, arg2) { // параметрите попадат в променливи })(1, 2); // подаваме някакви параметри

Нека разгледаме пример. Да предположим, че имаме div с число и бутон:

<div id="div">3</div> <button id="btn">click me</button>

Да предположим също, че имаме някакъв модул:

;(function() { let div = document.querySelector('#div'); let btn = document.querySelector('#btn'); function func(num) { return num * num; } btn.addEventListener('click', function() { div.textContent = func(div.textContent); }); })();

Както виждате, селекторите на нашите елементи са твърдо вградени в кода на модула. По-добро решение би било да ги подадем като параметри на модула - така в бъдеще лесно ще можем да ги променим. Нека коригираме нашия модул:

;(function(selector1, selector2) { let div = document.querySelector(selector1); let btn = document.querySelector(selector2); function func(num) { return num * num; } btn.addEventListener('click', function() { div.textContent = func(div.textContent); }); })('#div', '#btn');

Даден е бутон и три входни полета, в които се въвеждат числа. При натискане на бутона изведете в конзолата сумата от въведените числа. Реализирайте задачата с помощта на модул.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне