В основном это связано с тем, что все держит все отдельно, я верю. Поэтому держите HTML / CSS / JS в отдельности. Это делает ваш HTML более аккуратным и, я думаю, легче ориентироваться без него.
Тогда, когда / если вам нужно внести большие изменения, у вас есть достаточно места, чтобы в любом случае переместить встроенный JS во внешний файл OR если вы хотите применить одну и ту же функцию к нескольким кнопкам, то это меньше кода. И меньше кода - более счастливое место
. Если у вас есть файлы JS правильно и тщательно задокументированы, а затем перемещение их внешним лицом производится eaiser
Вам нужно либо передать свою переменную в функцию. Вы можете рассматривать это как измерение безопасности. Если какая-либо функция будет видеть все глобальные переменные по умолчанию, было бы очень просто переопределить что-то в остальных ваших 50000 строках кода.
$myVar = 'asdf';
function doSomething($var){
echo $var;
}
doSomething($myVar);
Или, если вы действительно не хотите передавать его, вы можете сделать это:
$myVar = 'asdf';
function doSomething() {
// tell the function that it should use a global var.
global $myVar;
echo $myVar;
}
doSomething();
Есть еще один способ вызвать переменную непосредственно в функции:
[ 116]$myVar = 'asdf'
; $GLOBALS['myVar']