Заголовок документа



бет13/26
Дата15.03.2024
өлшемі465.78 Kb.
#495676
1   ...   9   10   11   12   13   14   15   16   ...   26
JAVA SCRIPT-ОБЪЕКТІГЕ БАҒЫТТАЛҒАН СКРИПТІК БАҒДАРЛАМАЛАУ ТІЛІ-оқулық

Әдіс

Анықтама

a.toString()

Массивтің жолдық ұсынуын қайтарады, барлық элементтер үтірмен бөлінеді

a.toLocaleString()

Массивтің жолдық ұсынуын сәйкес таңдалған локальмен қайтарады

a.concat(item1[, item2[, ...[, itemN]]])

Аталған элементтер қосылған жаңа массивті қайтарады.

a.join(sep)

Массивті sep параметрді бөлгіш ретінде пайдаланылған жолға түрлендіреді

a.pop()

Массивтің соңғы элементін жояды және оны қайтарады.

a.push(item1, ..., itemN)

Массивтің соғына бір немесе одан да көп элементтерді қосу

a.reverse()

Массив элементтерінің тәртібін керіге өзгертеді.

a.shift()

Массивтің бірінші элементін жою және оны қайтару

a.slice(start[, end])

Жаңа массивті қайтарады

a.sort([cmpfn])

Массивте деректерді сұрыптайды

a.splice(start, delcount[, item1[, ...[, itemN]]])

Массивтен оның бір бөлігін қиып алу және бұл орынға жаңа элементтер қосуға мүмкіндік береді

a.unshift(item1[, item2[, ...[, itemN]]])

Массивтің басына элементтерді қосу

Функциялар


Функциялары, сондай-ақ JavaScript тілінің түйінді элементтері болып табылады. Негізгі функциялары өте қарапайым:
function add(x, y) { var total = x + y; return total;
}
Бұл мысалда функциялары туралы іс жүзінде білу керектердің барлығы көрсетілгендей. JavaScript функцияларда нөл немесе одан да көп параметрлерді қабылдай алады. Функциялар кез келгенді білдіруі және өз айнымалыларын анықтауды қамтуы мүмкін, олар осы функциялар үшін жергілікті. return нұсқауы маңызы бар мәнді қайтару үшін пайдаланылады және тоқтату функциясын орындайды. Егер return нұсқаулық функцияда жоқ (немесе бар, бірақ көрсетілген қайтарылатын мәні) болса, онда JavaScript undefined қайтарады.
Функцияны оған параметрлерін мүлдем бермей шақыртуға болады.
Мұндай жағдайда, олардың мәндері undefined тең:
add(); // NaN
// Нельзя проводить сложение undefined и undefined
Көбірек аргументтер беруге болады функцияны күтуге қарағанда:
add(2, 3, 4); // 5
// используются только первые два аргумента, "4" игнорируется
Бұл қажетсіз болып көрінуі мүмкін, бірақ шын мәнінде функциялары "артық" аргументпен arguments псевдомассивті көмегімен қол жеткізе алады, онда маңызы бар функциялардың барлық аргументтері берілген. Шексіз аргументтер қабылдайтын функциялар жазайық:
function add() { var sum = 0;
for (var i = 0, j = arguments.length; i < j; i++) { sum += arguments[i];
}
return sum;
}
add(2, 3, 4, 5); // 14
Немесе орташа мәндерді есептеу үшін функция құрамыз:
function avg() { var sum = 0;
for (var i = 0, j = arguments.length; i < j; i++) { sum += arguments[i];
}
return sum / arguments.length;
}
avg(2, 3, 4, 5); // 3.5
Өте ыңғайлы, бірақ шағын проблема бар. Бұл функция үтірмен бөлінген цифрлардың тізімін ғана түсінеді. Ал егер массивке сандар беру керек болса? Функция құрайық:
function avgArray(arr) { var sum = 0;
for (var i = 0, j = arr.length; i < j; i++) { sum += arr[i];
}
return sum / arr.length;
}
avgArray([2, 3, 4, 5]); // 3.5
Бұл жағдайда, егер сіз функциялардың бірінші нұсқасын пайдаланғыңыз келсе, оны қайтадан жазбай-ақ, онда JavaScript–та аргументтер массивімен функцияны шақыру мүмкіндігі бар. Бұл үшін apply() әдісі пайдаланылады:
avg.apply(null, [2, 3, 4, 5]); // 3.5
Екінші аргумент apply() әдісімен массив беріледі, функциялар аргументтер ретінде берілетін. Бірінші аргумент туралы кейінірек айтамыз. Функциялардың әдістерінің болуы, сондай-ақ, бұл-шын мәнінде, олар объектілері болып табылады.
JavaScript –та анонимді функциялар жасауға болады:
var avg = function() { var sum = 0;
for (var i = 0, j = arguments.length; i < j; i++) { sum += arguments[i];
}
return sum / arguments.length;
}
Бұл жазба function avg() семантикалық тең жазу. Бұл әр түрлі қызықты фокустарды пайдалануға мүмкіндік береді. Міне, қараңызшы, жергілікті айнымалыларды "жасыру" функциясы қалай болады:
var a = 1; var b = 2; (function() {
var b = 3; a += b;
})();
a; // 4
b; // 2
JavaScript -та рекурсивті функцияларды шақыру мүмкіндігі бар. Бұл иерархиалық құрылымдар деректерімен (мысалы, DOM жұмыс жасау кезінде кездесетін) жұмыс істеу кезінде пайдалы болуы мүмкін.
function countChars(elm) {
if (elm.nodeType == 3) { // TEXT_NODE return elm.nodeValue.length;
}
var count = 0;
for (var i = 0, child; child = elm.childNodes[i]; i++) { count += countChars(child);
}
return count;
}
Мұнда мәселелермен бетпе-бет келеміз: функцияны рекурсивті қалай шақыруға болады, егер онда атау жоқ болса? Бұл үшін JavaScript–та аталған функционалдық өрнектеу бар. Мысал, функцияларды пайдалану:
var charsInBody = (function counter(elm) { if (elm.nodeType == 3) { // TEXT_NODE
return elm.nodeValue.length;
}
var count = 0;
for (var i = 0, child; child = elm.childNodes[i]; i++) { count += counter(child);
}
return count;
})(document.body);
Мысалда функциялардың аты ғана функциялардың ішіндегі ең қолжетімділік. Бұл кодты оңтайландырады және оқылуды жақсартады.




Достарыңызбен бөлісу:
1   ...   9   10   11   12   13   14   15   16   ...   26




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет