php
js
изменение входящих аргументов
php
js
Проверка на существование функции
php
js
Вложенные функции
php
js
Рекурсия
php
js
function testFunction($arg1, $arg2, /* ..., */ $argn){ echo "Пример функции.\n"; return $result; //необязательно } |
function testFunction(arg_1, arg_2, /* ..., */ arg_n) { console.log("Пример функции"); return result; //необязательно } |
изменение входящих аргументов
php
function oneSetFunction(&$arg){ //& $arg = 1; } $arg = 2; oneSetFunction($arg); echo $arg; //1 |
function oneSetFunction(arg){ arg = 1; } var arg = 2; oneSetFunction(arg); console.log(arg); //1 |
php
if (!function_exists('testFunction')) { function testFunction($params = []): ?string //string or null { //что-то делаем return null; } } |
if (typeof testFunction !== 'function') { function testFunction(params = []){ } } |
php
function outside(){ //inside(); //еще нельзя function inside(){ echo "Я не существую пока не вызовут функцию outside().\n"; } inside(); //можно } /* Пока нельзя обратиться к функции inside(), поскольку функцию ещё не определили */ outside(); /* Теперь можно вызвать функцию inside(), обработка функции outside() сделала её доступной */ inside(); |
var phrase = 'Привет'; function outside() { inside(); //уже тут можно function inside() { console.log( phrase ); // найдёт переменную снаружи } } outside(); //inside(); //тут не определена |
Рекурсия
php
function factorial($n) { return ($n <= 0) ? 1 : $n * factorial ($n-1); } echo factorial(5); |
function factorial(n) { return (n <= 0) ? 1 : n * factorial(n - 1); //return (n === 0 || n === 1) ? 1 : n * factorial(n - 1); //может зациклиться. если вызвать с отрицательным числом } console.log(factorial(5)); |