СпоÑаÑÐºÑ ÑозглÑнемо âбÑдÑвелÑÐ½Ñ Ð±Ð»Ð¾ÐºÐ¸â кодÑ.
ÐнÑÑÑÑкÑÑÑ
ÐнÑÑÑÑкÑÑÑ â Ñе ÑинÑакÑиÑÐ½Ñ ÐºÐ¾Ð½ÑÑÑÑкÑÑÑ Ñа команди, ÑÐºÑ Ð²Ð¸ÐºÐ¾Ð½ÑÑÑÑ ÑкÑÑÑ Ð´ÑÑ.
Ðи вже баÑили ÑнÑÑÑÑкÑÑÑ alert('ÐÑивÑÑ, ÑвÑÑ!'), Ñка показÑÑ Ð¿Ð¾Ð²ÑÐ´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ âÐÑивÑÑ, ÑвÑÑ!â.
Ðожна пиÑаÑи ÑÑÑлÑки ÑнÑÑÑÑкÑÑй, ÑкÑлÑки завгодно. ÐнÑÑÑÑкÑÑÑ Ð¼Ð¾Ð¶Ð½Ð° ÑоздÑлÑÑи кÑÐ°Ð¿ÐºÐ¾Ñ Ð· комоÑ.
ÐапÑиклад, ÑÑÑ Ð¼Ð¸ ÑоздÑлили âÐÑивÑÑ, ÑвÑÑâ на два виклики alert:
alert('ÐÑивÑÑ'); alert('СвÑÑ');
ÐазвиÑай ÐºÐ¾Ð¶Ð½Ñ ÑнÑÑÑÑкÑÑÑ Ð¿Ð¸ÑÑÑÑ Ð· нового ÑÑдка, Ñоби код бÑло легÑе ÑиÑаÑи:
alert('ÐÑивÑÑ');
alert('СвÑÑ');
ÐÑапка з комоÑ
ÐдебÑлÑÑого кÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ð¼Ð¾Ð¶Ð½Ð° пÑопÑÑÑиÑи, ÑкÑо Ñ Ð¿ÐµÑенеÑÐµÐ½Ð½Ñ Ð½Ð° новий ÑÑдок.
Такий код бÑде пÑаÑÑваÑи:
alert('ÐÑивÑÑ')
alert('СвÑÑ')
У ÑÑÐ¾Ð¼Ñ ÑÐ°Ð·Ñ JavaScript ÑнÑеÑпÑеÑÑÑ Ð¿ÐµÑенеÑÐµÐ½Ð½Ñ ÑÑдка Ñк âнеÑвнÑâ кÑÐ°Ð¿ÐºÑ Ð· комоÑ. Це називаÑÑÑÑÑ Ð°Ð²ÑомаÑиÑне вÑÑÐ°Ð²Ð»ÐµÐ½Ð½Ñ ÐºÑапки з комоÑ.
ÐеÑеважно новий ÑÑдок ознаÑÐ°Ñ ÐºÑÐ°Ð¿ÐºÑ Ð· комоÑ. Ðле âпеÑеважноâ не ознаÑÐ°Ñ âзавждиâ!
У деÑÐºÐ¸Ñ Ð²Ð¸Ð¿Ð°Ð´ÐºÐ°Ñ Ð½Ð¾Ð²Ð¸Ð¹ ÑÑдок не ознаÑÐ°Ñ ÐºÑÐ°Ð¿ÐºÑ Ð· комоÑ. ÐапÑиклад:
alert(3 +
1
+ 2);
Ðод виведе 6, ÑÐ¾Ð¼Ñ Ñо JavaScript не вÑÑавиÑÑ ÑÑÑ ÐºÑÐ°Ð¿ÐºÑ Ð· комоÑ. ÐнÑÑÑÑивно зÑозÑмÑло, Ñо, ÑкÑо ÑÑдок закÑнÑÑÑÑÑÑÑ Ð¿Ð»ÑÑом "+", Ñо Ñе âнезакÑнÑений виÑазâ, ÑÐ¾Ð¼Ñ ÐºÑапка з ÐºÐ¾Ð¼Ð¾Ñ Ð½Ðµ поÑÑÑбна. Рв ÑÑÐ¾Ð¼Ñ Ð²Ð¸Ð¿Ð°Ð´ÐºÑ Ð²Ñе пÑаÑÑÑ Ñк задÑмано.
Ðле Ñ ÑиÑÑаÑÑÑ, коли JavaScript âзабÑваÑâ вÑÑавиÑи кÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ñам, де Ñе дÑйÑно поÑÑÑбно.
Ðомилки, ÑÐºÑ Ð²Ð¸Ð½Ð¸ÐºÐ°ÑÑÑ Ñ ÑÐ°ÐºÐ¸Ñ ÑиÑÑаÑÑÑÑ , доÑиÑÑ Ð²Ð°Ð¶ÐºÐ¾ виÑвиÑи й випÑавиÑи.
ЯкÑо Ñ Ð¾ÑеÑе побаÑиÑи конкÑеÑний пÑиклад ÑÐ°ÐºÐ¾Ñ Ð¿Ð¾Ð¼Ð¸Ð»ÐºÐ¸, звеÑнÑÑÑ ÑÐ²Ð°Ð³Ñ Ð½Ð° Ñей код:
alert("ÐÑивÑÑ");
[1, 2].forEach(alert);
Ðоки Ñо не задÑмÑйÑеÑÑ, Ñо ознаÑаÑÑÑ ÐºÐ²Ð°Ð´ÑаÑÐ½Ñ Ð´Ñжки [] Ñ forEach. Ðи вивÑимо ÑÑ
пÑзнÑÑе. ÐаÑаз пÑоÑÑо запамâÑÑайÑе ÑезÑлÑÑÐ°Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð´Ñ: ÑпоÑаÑÐºÑ Ð²Ð¸Ð²ÐµÐ´ÐµÑÑÑÑ ÐÑивÑÑ, Ð´Ð°Ð»Ñ 1, а поÑÑм 2.
Ð ÑÐµÐ¿ÐµÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ð¼Ð¾ кÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ð¿ÑÑÐ»Ñ Ð¿ÐµÑÑого alert:
alert("ÐÑивÑÑ")
[1, 2].forEach(alert);
Ð ÑзниÑÑ Ð· кодом виÑе лиÑе в Ð¾Ð´Ð½Ð¾Ð¼Ñ ÑимволÑ: кÑапка з комоÑ, ÑÐºÑ Ð¼Ð¸ видалили в кÑнÑÑ Ð¿ÐµÑÑого ÑÑдка.
ЯкÑо ми запÑÑÑимо Ñей код, виведеÑÑÑÑ Ð»Ð¸Ñе ÐÑивÑÑ (а поÑÑм виникне помилка, ÑÐºÑ Ð¼Ð¾Ð¶Ð½Ð° побаÑиÑи в конÑолÑ). ЧиÑла бÑлÑÑе не виводÑÑÑÑÑ.
Це ÑомÑ, Ñо JavaScript не вÑÑавлÑÑ ÐºÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ð¿ÐµÑед квадÑаÑними дÑжками [...]. ÐÑкÑлÑки кÑапка з ÐºÐ¾Ð¼Ð¾Ñ Ð°Ð²ÑомаÑиÑно не вÑÑавиÑÑÑÑ, код Ñ ÑÑÐ¾Ð¼Ñ Ð¿ÑÐ¸ÐºÐ»Ð°Ð´Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°ÑÑÑÑÑ Ñк одна ÑнÑÑÑÑкÑÑÑ.
ÐÑÑ Ñк ÑÑÑÑй побаÑиÑÑ ÑÑ:
alert("ÐÑивÑÑ")[1, 2].forEach(alert);
ÐиглÑÐ´Ð°Ñ Ð´Ð¸Ð²Ð½Ð¾, Ñи не Ñак? У ÑÑÐ¾Ð¼Ñ Ð²Ð¸Ð¿Ð°Ð´ÐºÑ Ñаке обâÑÐ´Ð½Ð°Ð½Ð½Ñ Ð½ÐµÐ¿ÑавилÑне. Щоби код пÑавилÑно пÑаÑÑвав, нам поÑÑÑбно поÑÑавиÑи кÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ð¿ÑÑÐ»Ñ alert.
Це може ÑÑаÑиÑÑ Ð² ÑнÑÐ¸Ñ Ð²Ð¸Ð¿Ð°Ð´ÐºÐ°Ñ .
Ðи ÑекомендÑÑмо ÑÑавиÑи кÑÐ°Ð¿ÐºÑ Ð· ÐºÐ¾Ð¼Ð¾Ñ Ð¼Ñж ÑнÑÑÑÑкÑÑÑми, навÑÑÑ ÑкÑо вони ÑоздÑÐ»ÐµÐ½Ñ Ð½Ð¾Ð²Ð¸Ð¼Ð¸ ÑÑдками. Це пÑавило ÑиÑоко викоÑиÑÑовÑÑÑÑÑÑ Ð² ÑпÑлÑноÑÑ ÑозÑобникÑв. ÐаÑÑо повÑоÑиÑи Ñе Ñаз â здебÑлÑÑого можна пÑопÑÑкаÑи кÑапки з комоÑ. Ðле безпеÑнÑÑе â оÑобливо Ð´Ð»Ñ Ð½Ð¾Ð²Ð°Ñка â викоÑиÑÑовÑваÑи ÑÑ .
ÐоменÑаÑÑ
Ð ÑаÑом пÑогÑами ÑÑаÑÑÑ Ð²Ñе ÑкладнÑÑими Ñа ÑкладнÑÑими. ÐÐ¸Ð½Ð¸ÐºÐ°Ñ Ð¿Ð¾ÑÑеба додаваÑи коменÑаÑÑ, ÑÐºÑ Ð±ÑдÑÑÑ Ð¾Ð¿Ð¸ÑÑваÑи Ñо ÑобиÑÑ ÐºÐ¾Ð´ Ñ ÑомÑ.
ÐоменÑаÑÑ Ð¼Ð¾Ð¶Ð½Ð° пиÑаÑи в бÑдÑ-ÑÐºÐ¾Ð¼Ñ Ð¼ÑÑÑÑ ÑкÑипÑÑ. Ðони не впливаÑÑÑ Ð½Ð° його виконаннÑ, ÑÐ¾Ð¼Ñ Ñо ÑÑÑÑй пÑоÑÑо ÑгноÑÑÑ ÐºÐ¾Ð¼ÐµÐ½ÑаÑÑ.
ÐдноÑÑÐ´ÐºÐ¾Ð²Ñ ÐºÐ¾Ð¼ÐµÐ½ÑаÑÑ Ð¿Ð¾ÑинаÑÑÑÑÑ Ð· подвÑÐ¹Ð½Ð¾Ñ ÐºÐ¾ÑÐ¾Ñ ÑиÑки //.
ЧаÑÑина ÑÑдка пÑÑÐ»Ñ // вважаÑÑÑÑÑ ÐºÐ¾Ð¼ÐµÐ½ÑаÑем. Такий коменÑÐ°Ñ Ð¼Ð¾Ð¶Ðµ займаÑи веÑÑ ÑÑдок, або мÑÑÑиÑиÑÑ Ð¿ÑÑÐ»Ñ ÑнÑÑÑÑкÑÑÑ.
ÐÑÑ Ñак:
// Цей коменÑÐ°Ñ Ð·Ð°Ð¹Ð¼Ð°Ñ Ð²ÐµÑÑ ÑÑдок
alert('ÐÑивÑÑ');
alert('СвÑÑ'); // Цей коменÑÐ°Ñ Ð¼ÑÑÑиÑÑÑÑ Ð¿ÑÑÐ»Ñ ÑнÑÑÑÑкÑÑÑ
ÐагаÑоÑÑÐ´ÐºÐ¾Ð²Ñ ÐºÐ¾Ð¼ÐµÐ½ÑаÑÑ Ð¿Ð¾ÑинаÑÑÑÑÑ Ð· коÑÐ¾Ñ ÑиÑки з зÑÑоÑÐºÐ¾Ñ /* Ñ Ð·Ð°ÐºÑнÑÑÑÑÑÑÑ Ð·ÑÑоÑÐºÐ¾Ñ Ð· коÑÐ¾Ñ ÑиÑÐºÐ¾Ñ */.
ÐÑÑ Ñак:
/* ÐÑиклад Ñз двома повÑдомленнÑми.
Це багаÑоÑÑдковий коменÑаÑ.
*/
alert('ÐÑивÑÑ');
alert('СвÑÑ');
ÐмÑÑÑ ÐºÐ¾Ð¼ÐµÐ½ÑаÑÑ ÑгноÑÑÑÑÑÑÑ, ÑомÑ, ÑкÑо ми напиÑемо вÑеÑÐµÐ´Ð¸Ð½Ñ /* ⦠*/ код, вÑн не виконаÑÑÑÑÑ.
Ðеколи Ð²Ð¸Ð½Ð¸ÐºÐ°Ñ Ð½ÐµÐ¾Ð±Ñ ÑднÑÑÑÑ ÑимÑаÑово вимкнÑÑи ÑаÑÑÐ¸Ð½Ñ ÐºÐ¾Ð´Ñ:
/* ÐакоменÑований код
alert('ÐÑивÑÑ');
*/
alert('СвÑÑ');
У бÑлÑÑоÑÑÑ ÑедакÑоÑÑв ÑÑдок ÐºÐ¾Ð´Ñ Ð¼Ð¾Ð¶Ð½Ð° закоменÑÑваÑи, наÑиÑнÑвÑи комбÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ctrl+/, а Ñоби закоменÑÑваÑи декÑлÑка ÑÑдкÑв â видÑлÑÑÑ Ð¿Ð¾ÑÑÑÐ±Ð½Ñ ÑÑдки Ñа наÑиÑнÑÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑ ÐºÐ»Ð°Ð²ÑÑ Ctrl+Shift+/. У macOS поÑÑÑбно наÑиÑкаÑи клавÑÑÑ Cmd замÑÑÑÑ Ctrl Ñ ÐºÐ»Ð°Ð²ÑÑÑ Option замÑÑÑÑ Shift.
Ðе може бÑÑи /*...*/ вÑеÑÐµÐ´Ð¸Ð½Ñ /*...*/.
Такий код âпомÑеâ з помилкоÑ:
/*
/* вкладений коменÑÐ°Ñ ?!? */
*/
alert( 'СвÑÑ' );
ÐÑÐ´Ñ Ð»Ð°Ñка, не вагайÑеÑÑ ÐºÐ¾Ð¼ÐµÐ½ÑÑваÑи Ð²Ð°Ñ ÐºÐ¾Ð´.
ÐоменÑаÑÑ Ð·Ð±ÑлÑÑÑÑÑÑ ÑозмÑÑ ÐºÐ¾Ð´Ñ, але Ñе не пÑоблема. РбагаÑо ÑнÑÑÑÑменÑÑв, ÑÐºÑ Ð¼ÑнÑмÑзÑÑÑÑ ÐºÐ¾Ð´ пеÑед пÑблÑкаÑÑÑÑ Ð½Ð° ÑобоÑий ÑеÑвеÑ. Ðони видалÑÑÑ ÐºÐ¾Ð¼ÐµÐ½ÑаÑÑ, ÑÐ¾Ð¼Ñ ÑÑ Ð½Ðµ бÑде в ÑобоÑÐ¸Ñ ÑкÑипÑÐ°Ñ . ÐÑже, коменÑаÑÑ Ð¶Ð¾Ð´Ð½Ð¸Ð¼ Ñином не впливаÑÑÑ Ð½Ð° ÑобоÑий код.
ÐÑзнÑÑе в поÑÑÐ±Ð½Ð¸ÐºÑ Ð±Ñде ÑоздÑл ЯкÑÑÑÑ ÐºÐ¾Ð´Ñ, Ñкий поÑÑниÑÑ, Ñк кÑаÑе пиÑаÑи коменÑаÑÑ.
ÐоменÑаÑÑ
<code>, Ð´Ð»Ñ ÐºÑлÑÐºÐ¾Ñ ÑÑдкÑв â обгоÑнÑÑÑ ÑÑ Ñегом<pre>, Ð´Ð»Ñ Ð¿Ð¾Ð½Ð°Ð´ 10 ÑÑдкÑв â викоÑиÑÑовÑйÑе пÑÑоÑниÑÑ (plnkr, jsbin, codepenâ¦)