Ðод ÑÑзвим Ð´Ð»Ñ Ð¾Ñибок. РвÑ, ÑкоÑее вÑего, бÑдеÑе делаÑÑ Ð¾Ñибки в коде⦠ÐпÑоÑем, давайÑе бÑдем оÑкÑовеннÑ: Ð²Ñ ÑоÑно бÑдеÑе ÑовеÑÑаÑÑ Ð¾Ñибки в коде. РконÑе конÑов, Ð²Ñ Ñеловек, а не ÑобоÑ.
Ðо по ÑмолÑÐ°Ð½Ð¸Ñ Ð² бÑаÑзеÑе оÑибки не виднÑ. То еÑÑÑ, еÑли ÑÑо-Ñо пойдÑÑ Ð½Ðµ Ñак, Ð¼Ñ Ð½Ðµ Ñвидим, ÑÑо именно ÑломалоÑÑ, и не Ñможем ÑÑо поÑиниÑÑ.
ÐÐ»Ñ ÑеÑÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°Ñ Ñакого Ñода в бÑаÑÐ·ÐµÑ Ð²ÑÑÑÐ¾ÐµÐ½Ñ Ñак назÑваемÑе «ÐнÑÑÑÑменÑÑ ÑазÑабоÑки» (Developer tools или ÑокÑаÑÑнно â devtools).
Chrome и Firefox ÑниÑкали лÑÐ±Ð¾Ð²Ñ Ð¿Ð¾Ð´Ð°Ð²Ð»ÑÑÑего болÑÑинÑÑва пÑогÑаммиÑÑов во многом благодаÑÑ Ñвоим оÑменнÑм инÑÑÑÑменÑам ÑазÑабоÑÑика. ÐÑÑалÑнÑе бÑаÑзеÑÑ, Ñ Ð¾ÑÑ Ð¸ оÑнаÑÐµÐ½Ñ Ð¿Ð¾Ð´Ð¾Ð±Ð½Ñми инÑÑÑÑменÑами, но вÑÑ Ð¶Ðµ заÑаÑÑÑÑ Ð½Ð°Ñ Ð¾Ð´ÑÑÑÑ Ð² Ñоли догонÑÑÑÐ¸Ñ Ð¸ по каÑеÑÑвÑ, и по колиÑеÑÑÐ²Ñ ÑвойÑÑв и оÑобенноÑÑей. РобÑем, поÑÑи Ñ Ð²ÑÐµÑ Ð¿ÑогÑаммиÑÑов еÑÑÑ Ñвой «лÑбимÑй» бÑаÑзеÑ. ÐÑÑгие иÑполÑзÑÑÑÑÑ ÑолÑко Ð´Ð»Ñ Ð¾Ñлова и иÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÑпеÑиÑиÑнÑÑ Â«Ð±ÑаÑзеÑозавиÑимÑÑ Â» оÑибок.
ÐÐ»Ñ Ð½Ð°Ñала знакомÑÑва Ñ ÑÑими моÑнÑми инÑÑÑÑменÑами давайÑе вÑÑÑним, как Ð¸Ñ Ð¾ÑкÑÑваÑÑ, ÑмоÑÑеÑÑ Ð¾Ñибки и запÑÑкаÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ JavaScript.
Google Chrome
ÐÑкÑойÑе ÑÑÑаниÑÑ bug.html.
Ð ÐµÑ JavaScript-коде закÑалаÑÑ Ð¾Ñибка. Ðна не видна обÑÑÐ½Ð¾Ð¼Ñ Ð¿Ð¾ÑеÑиÑелÑ, поÑÑÐ¾Ð¼Ñ Ð´Ð°Ð²Ð°Ð¹Ñе найдÑм ÐµÑ Ð¿Ñи помоÑи инÑÑÑÑменÑов ÑазÑабоÑки.
ÐажмиÑе F12 или, еÑли Ð²Ñ Ð¸ÑполÑзÑеÑе Mac, Cmd+Opt+J.
Ðо ÑмолÑÐ°Ð½Ð¸Ñ Ð² инÑÑÑÑменÑÐ°Ñ ÑазÑабоÑÑика оÑкÑоеÑÑÑ Ð²ÐºÐ»Ð°Ð´ÐºÐ° Console (конÑолÑ).
Ðна вÑглÑÐ´Ð¸Ñ Ð¿ÑиблизиÑелÑно ÑледÑÑÑим обÑазом:
ТоÑнÑй внеÑний вид инÑÑÑÑменÑов ÑазÑабоÑки завиÑÐ¸Ñ Ð¾Ñ Ð¸ÑполÑзÑемой веÑÑии Chrome. ÐÑÐµÐ¼Ñ Ð¾Ñ Ð²Ñемени некоÑоÑÑе деÑали изменÑÑÑÑÑ, но в Ñелом внеÑний вид оÑÑаÑÑÑÑ Ð¿ÑимеÑно Ð¿Ð¾Ñ Ð¾Ð¶Ð¸Ð¼ на пÑедÑдÑÑие веÑÑии.
- РконÑоли Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑвидеÑÑ ÑообÑение об оÑибке, оÑÑиÑованное кÑаÑнÑм ÑвеÑом. РнаÑем ÑлÑÑае ÑкÑÐ¸Ð¿Ñ ÑодеÑÐ¶Ð¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑÑнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Â«lalala».
- СпÑава пÑиÑÑÑÑÑвÑÐµÑ ÑÑÑлка на иÑÑ
однÑй код
bug.html:12Ñ Ð½Ð¾Ð¼ÐµÑом ÑÑÑоки кода, в коÑоÑой ÑÑа оÑибка и пÑоизоÑла.
Ðод ÑообÑением об оÑибке наÑ
одиÑÑÑ Ñиний Ñимвол >. Ðн обознаÑÐ°ÐµÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½ÑÑ ÑÑÑокÑ, в ней Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑедакÑиÑоваÑÑ Ð¸ запÑÑкаÑÑ JavaScript-командÑ. ÐÐ»Ñ Ð¸Ñ
запÑÑка нажмиÑе Enter.
ÐбÑÑно пÑи нажаÑии Enter введÑÐ½Ð½Ð°Ñ ÑÑÑока кода ÑÑÐ°Ð·Ñ Ð²ÑполнÑеÑÑÑ.
ЧÑÐ¾Ð±Ñ Ð¿ÐµÑенеÑÑи ÑÑÑокÑ, нажмиÑе Shift+Enter. Так можно вводиÑÑ Ð±Ð¾Ð»ÐµÐµ длиннÑй JS-код.
ТепеÑÑ Ð¼Ñ Ñвно видим оÑибки, Ð´Ð»Ñ Ð½Ð°Ñала ÑÑого вполне доÑÑаÑоÑно. ÐÑ ÐµÑÑ Ð²ÐµÑнÑмÑÑ Ðº инÑÑÑÑменÑам ÑазÑабоÑÑика позже и более подÑобно ÑаÑÑмоÑÑим оÑÐ»Ð°Ð´ÐºÑ ÐºÐ¾Ð´Ð° в главе ÐÑладка в бÑаÑзеÑе.
Firefox, Edge и дÑÑгие
ÐнÑÑÑÑменÑÑ ÑазÑабоÑÑика в болÑÑинÑÑве бÑаÑзеÑов оÑкÑÑваÑÑÑÑ Ð¿Ñи нажаÑии на F12.
ÐÑ Ð²Ð½ÐµÑний вид и пÑинÑÐ¸Ð¿Ñ ÑабоÑÑ Ð¼Ð°Ð»Ð¾ Ñем оÑлиÑаÑÑÑÑ. РазобÑавÑиÑÑ Ñ Ð¸Ð½ÑÑÑÑменÑами в одном бÑаÑзеÑе, Ð²Ñ Ð±ÐµÐ· ÑÑÑда ÑможеÑе ÑабоÑаÑÑ Ñ Ð½Ð¸Ð¼Ð¸ и в дÑÑгом.
Safari
Safari (бÑаÑÐ·ÐµÑ Ð´Ð»Ñ Mac, не поддеÑживаеÑÑÑ Ð² ÑиÑÑÐµÐ¼Ð°Ñ Windows/Linux) вÑÑ Ð¶Ðµ Ð¸Ð¼ÐµÐµÑ Ð½ÐµÐ±Ð¾Ð»ÑÑое оÑлиÑие. ÐÐ»Ñ Ð½Ð°Ñала ÑабоÑÑ Ð½Ð°Ð¼ нÑжно вклÑÑиÑÑ Â«ÐÐµÐ½Ñ ÑазÑабоÑки» («Developer menu»).
ÐÑкÑойÑе ÐаÑÑÑойки (Preferences) и пеÑейдиÑе к панели «ÐÑодвинÑÑÑе» (Advanced). Ð Ñамом Ð½Ð¸Ð·Ñ Ð²Ñ Ð½Ð°Ð¹Ð´ÑÑе ÑекбокÑ:
ТепеÑÑ ÐºÐ¾Ð½ÑÐ¾Ð»Ñ Ð¼Ð¾Ð¶Ð½Ð¾ акÑивиÑоваÑÑ Ð½Ð°Ð¶Ð°Ñием ÐºÐ»Ð°Ð²Ð¸Ñ Cmd+Opt+C. Также обÑаÑиÑе внимание на новÑй ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¼ÐµÐ½Ñ Â«Ð Ð°Ð·ÑабоÑка» («Develop»). Рнем ÑодеÑжиÑÑÑ Ð±Ð¾Ð»ÑÑое колиÑеÑÑво команд и наÑÑÑоек.
ÐÑого
- ÐнÑÑÑÑменÑÑ ÑазÑабоÑÑика позволÑÑÑ Ð½Ð°Ð¼ ÑмоÑÑеÑÑ Ð¾Ñибки, вÑполнÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ, пÑовеÑÑÑÑ Ð·Ð½Ð°Ñение пеÑеменнÑÑ Ð¸ еÑÑ Ð¼Ð½Ð¾Ð³Ð¾ вÑего полезного.
- РболÑÑинÑÑве бÑаÑзеÑов, ÑабоÑаÑÑÐ¸Ñ Ð¿Ð¾Ð´ Windows, инÑÑÑÑменÑÑ ÑазÑабоÑÑика можно оÑкÑÑÑÑ, нажав F12. Ð Chrome Ð´Ð»Ñ Mac иÑполÑзÑйÑе комбинаÑÐ¸Ñ Cmd+Opt+J, Safari: Cmd+Opt+C (Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ пÑедваÑиÑелÑное вклÑÑение «ÐÐµÐ½Ñ ÑазÑабоÑÑика»).
ТепеÑÑ Ð½Ð°Ñе окÑÑжение полноÑÑÑÑ Ð½Ð°ÑÑÑоено. Ð ÑледÑÑÑем Ñазделе Ð¼Ñ Ð¿ÐµÑейдÑм непоÑÑедÑÑвенно к JavaScript.
ÐомменÑаÑии
<code>, Ð´Ð»Ñ Ð½ÐµÑколÑÐºÐ¸Ñ ÑÑÑок кода — Ñег<pre>, еÑли болÑÑе 10 ÑÑÑок — ÑÑÑÐ»ÐºÑ Ð½Ð° пеÑоÑниÑÑ (plnkr, JSBin, codepenâ¦)