{"id":208570,"date":"2014-01-11T16:19:03","date_gmt":"2014-01-11T12:19:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=208570"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=208570","title":{"rendered":"<span class=\"post_title\">45 \u0422\u0438\u043f\u0441\u043e\u0432-\u0422\u0440\u0438\u043a\u0441\u043e\u0432 \u0438 \u041f\u0440\u0430\u043a\u0442\u0438\u043a JavaScript<\/span>"},"content":{"rendered":"<div class=\"content html_format\"> \t\t\t\u041e\u0434\u043d\u0438\u043c \u0432\u0435\u0447\u0435\u0440\u043e\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0447\u0435\u0433\u043e, \u043b\u0438\u0441\u0442\u0430\u044f \u0431\u0435\u043b\u044b\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u0432 \u043f\u043e\u0438\u0441\u043a\u0430\u0445 \u0447\u0435\u0433\u043e \u0431\u044b \u0442\u0430\u043a\u043e\u0433\u043e \u043c\u043d\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 \u0441\u043e\u043d \u0433\u0440\u044f\u0434\u0443\u0449\u0438\u0439, \u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f \u044f \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u0435\u0439\u043a\u0443 \u2013 \u043d\u0430 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c \u043c\u043d\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0435, \u043e\u0442 \u0430\u0432\u0442\u043e\u0440\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u043d\u0430\u0442\u044c \u043d\u0435 \u0437\u043d\u0430\u044e, \u0441\u043b\u044b\u0445\u0430\u0442\u044c \u043d\u0435 \u0441\u043b\u044b\u0445\u0430\u043b. \u0427\u0442\u0438\u0432\u043e \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c, \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u043b\u0438\u0437\u043a\u043e \u043f\u043e \u0440\u043e\u0434\u0443 \u0434\u0435\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u043e \u0444\u043e\u0440\u043c\u0435 \u0438 \u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044e. <br \/>  \u041f\u0440\u0430\u0432\u0434\u0430, \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0432\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u043b\u0441\u044f \u0441 \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0438\u0437\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435, \u043a \u0442\u043e\u043c\u0443 \u0436\u0435 \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0431\u0430\u0437\u0438\u0441\u043d\u044b\u0445 \u0432\u0435\u0449\u0435\u0439, \u043d\u043e \u043f\u043e\u0434\u0443\u043c\u0430\u043b, \u0447\u0442\u043e \u043e\u043d\u0430 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u0441\u0435\u043b\u0435\u043d\u0438\u044f \u2013 \u043a\u043e\u043c\u0443 \u0432\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043b\u0435\u043d\u044c, \u043d\u043e \u043b\u044e\u0431\u0438\u0442 \u0447\u0442\u043e\u0431\u044b \u043a\u0440\u0430\u0442\u043a\u043e, \u0441 \u0442\u043e\u043b\u043a\u043e\u043c, \u0441 \u0440\u0430\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0438 \u043f\u043e \u0434\u0435\u043b\u0443 \u0431\u0435\u0437 \u043b\u0438\u0448\u043d\u0435\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0449\u0438\u043d\u044b. <br \/>  \u0415\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u043d\u0438\u0436\u0435 \u0438\u0437\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u043e\u0442\u043d\u044e\u0434\u044c \u043d\u0435 \u0435\u0441\u0442\u044c \u0438\u0441\u0442\u0438\u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0438\u043d\u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u043a\u0430\u043a \u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u0438, \u043d\u0430 \u043d\u0435\u0439 \u043a\u043b\u044f\u0441\u0442\u044c\u0441\u044f \u044f \u0431\u044b \u043d\u0435 \u0441\u043e\u0432\u0435\u0442\u043e\u0432\u0430\u043b. \u041d\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0442\u043e-\u0442\u043e \u043e\u0442\u043a\u0440\u043e\u0435\u0442 \u043a\u0430\u043a\u0438\u0435 \u0432\u0435\u0449\u0438 \u0441 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0430 \u043a\u0442\u043e \u2013 \u0442\u043e \u043f\u043e\u043a\u0440\u0438\u0442\u0438\u043a\u0443\u0435\u0442, \u0432\u044b\u0441\u043a\u0430\u0437\u0430\u0432 \u0441\u0432\u043e\u0435 \u0427\u0421\u0412\u0435\u0448\u043d\u043e\u0435: \u00ab\u0424\u0438 \u0444\u0438 \u0444\u0438, \u0444\u0430 \u0444\u0430 \u0444\u0430!\u00bb. <br \/>  \u041e\u0434\u043d\u0430\u043a\u043e \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u0432 \u043c\u043e\u0435\u043c \u0441\u0432\u043e\u0435\u0432\u043e\u043b\u044c\u043d\u043e\u043c \u043e\u0442 \u043b\u0438\u0446\u0430 \u043f\u0435\u0440\u0432\u043e\u0433\u043e\u2026<br \/>  <a name=\"habracut\"><\/a><\/p>\n<h3>\u041a\u0430\u0434\u0440 \u043f\u0435\u0440\u0432\u044b\u0439, \u0432\u0441\u0442\u0443\u043f\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439<\/h3>\n<p>  \u041a\u0430\u043a \u0432\u044b \u0437\u043d\u0430\u0435\u0442\u0435, JavaScript \u043d\u043e\u043c\u0435\u0440 \u043e\u0434\u0438\u043d \u0441\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043c\u0438\u0440\u0435: \u044d\u0442\u043e \u044f\u0437\u044b\u043a \u0434\u043b\u044f \u0432\u0435\u0431\u0430, \u044f\u0437\u044b\u043a \u0434\u043b\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 ( \u043f\u0440\u0438\u043c. \u2013 \u043e\u043f\u0443\u0441\u0442\u0438\u043b \u0441\u043b\u043e\u0432\u043e hybrid: mobile hybrid apps ) c <a href=\"http:\/\/phonegap.com\">PhoneGap<\/a> \u0438 <a href=\"http:\/\/www.appcelerator.com\">Appcelerator<\/a>, \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043e\u043a \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 c <a href=\"http:\/\/nodejs.org\/\">NodeJS<\/a> \u0438 <a href=\"http:\/\/wakanda.org\/\">Wakanda<\/a>, \u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0439. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 \u0434\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u0432 \u043c\u0438\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f: \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043a\u0430\u043a \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e alert \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u043e\u0431\u043e\u0442\u043e\u043c( \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u00a0<a href=\"http:\/\/nodebots.io\/\">nodebot<\/a>, <a href=\"http:\/\/semu.github.io\/noduino\/\">nodruino<\/a>).<\/p>\n<p>  \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0441 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c \u0437\u043d\u0430\u043d\u0438\u0435\u043c JavaScript, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0438\u0448\u0443\u0442 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0439 \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434, \u043e\u0434\u043d\u0438 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0432\u043e\u0441\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0440\u044b\u043d\u043a\u0435 \u0442\u0440\u0443\u0434\u0430.<br \/>  \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u043d\u0435 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0442\u0440\u044e\u043a\u0430\u043c\u0438 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b \u043a\u0430\u0436\u0434\u043e\u043c\u0443 JavaScript \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u0432 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 ( browser\/engine ), \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 javascript( Server Side JavaScript interpreter ).<\/p>\n<p>  <b>\u0412\u0441\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043a\u043e\u0434\u0430 \u0431\u044b\u043b\u0438 \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0432 Google Chrome version 30, \u043a\u043e\u0442\u043e\u0440\u044b\u0439<br \/>  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 V8 JavaScript Engine (V8 3.20.17.15).<br \/>  <\/b><\/p>\n<h3> \u041a\u0430\u0434\u0440 \u0432\u0442\u043e\u0440\u043e\u0439, \u043f\u043e\u0443\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e-\u0441\u043e\u0432\u0435\u0442\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439<\/h3>\n<p>  1 \u2014 <u>\u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u0441\u043b\u043e\u0432\u043e `var`, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u0442\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439<br \/>  \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437 :<\/u><br \/>   \u041f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u0438\u0435 \u043d\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0440\u0430\u043d\u0435\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0434\u0430\u043d\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435. \u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0433\u043e.<br \/>   (\u043f\u0440\u0438\u043c. \u2014 \u0430\u0432\u0442\u043e\u0440 \u043d\u0430\u043c\u0435\u043a\u0430\u0435\u0442, \u0447\u0442\u043e \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0442\u043e \u043c\u043e\u0436\u0435\u0442\u0435<br \/>   \u0437\u0430\u0431\u044b\u0442\u044c \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u0441\u043b\u043e\u0432\u043e, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u0442\u0435 \u043b\u0438\u0448\u043d\u044e\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0432<br \/>   \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 window)<\/p>\n<p>  2 \u2014 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `===` \u0432\u043c\u0435\u0441\u0442\u043e `==` :<\/u><br \/>   \u041f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 `==(!=)` \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0438\u043f\u043e\u0432, \u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e. \u0422\u043e\u0433\u0434\u0430 \u043a\u0430\u043a `===` \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f. \u0414\u0430\u043d\u043d\u044b\u0439<br \/>   \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u0438 \u0442\u0438\u043f\u0430, \u0447\u0442\u043e \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c `==`. \u041f\u0440\u0438\u043c\u0435\u0440\u044b:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         [10] === 10    \/\/ is false         [10]  == 10    \/\/ is true         '10' == 10     \/\/ is true         '10' === 10    \/\/ is false          []   == 0     \/\/ is true          [] ===  0     \/\/ is false          '' == false   \/\/ is true but true == &quot;a&quot; is false          '' ===   false \/\/ is false ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  3 \u2014 <u>`undefined, null, 0, false, NaN, &#187;` :<\/u><br \/>   \u0412\u0441\u0435 \u0432\u044b\u0448\u0435\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043b\u043e\u0436\u044c\u044e \u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445<\/p>\n<p>  4 \u2014 <u>\u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 `;` :<\/u><br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 `;` \u0434\u043b\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0439. \u0412\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u044b, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0435\u0435, \u0442\u0430\u043a \u043a\u0430\u043a JavaScript \u043f\u0430\u0440\u0441\u0435\u0440 \u0432\u0441\u0442\u0430\u0432\u0438\u0442 \u0435\u0435 \u0437\u0430 \u0432\u0430\u0441.<\/p>\n<p>  5 \u2014 <u>\u041e\u0431\u044a\u0435\u043a\u0442 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function Person(firstName, lastName){             this.firstName =  firstName;             this.lastName = lastName;         }          var Saad = new Person(&quot;Saad&quot;, &quot;Mousliki&quot;); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  6 \u2014 <u>\u0411\u0443\u0434\u044c\u0442\u0435 \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u044b, \u043a\u043e\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 `typeof, instanceOf, constructor` :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var arr = [&quot;a&quot;, &quot;b&quot;, &quot;c&quot;];         typeof arr;   \/\/ return &quot;object&quot;         arr  instanceof Array \/\/ true         arr.constructor();  \/\/[] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  7 \u2014 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 self-calling \u0444\u0443\u043d\u043a\u0446\u0438\u0438 :<\/u><br \/>   \u0427\u0430\u0441\u0442\u043e \u0438\u0445 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u0441\u0430\u043c\u043e\u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u043c\u0438\u0441\u044f \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u044b\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 (Self-Invoked Anonymous Function) \u0438\u043b\u0438 \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 (Immediately Invoked Function Expression (IIFE)). \u042d\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f, \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0438 \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0444\u043e\u0440\u043c\u0443:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         (function(){             \/\/ some private code that will be executed automatically         })();         (function(a,b){             var result = a+b;             return result;         })(10,20); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   (\u043f\u0440\u0438\u043c. \u2014 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0443\u043d\u043a\u0442\u0435 \u0431\u044b\u043b\u043e \u0442\u0440\u0443\u0434\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0435, \u043a\u0430\u043a \u0438\u0445 \u0433\u0440\u0430\u043c\u043e\u0442\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438<br \/>   \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u0438\u0439 \u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439, \u0443\u0432\u044b, \u043d\u0435 \u0437\u043d\u0430\u044e. \u0414\u0443\u043c\u0430\u044e \u0430\u0432\u0442\u043e\u0440 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0430\u043c\u0435\u043a\u043d\u0443\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b \u0441\u043a\u0440\u043e\u0435\u0442\u0435 \u0441\u0432\u043e\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0435 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0435\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f)<\/p>\n<p>  8 \u2014 <u>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var items = [12,548,'a',2,5478,'foo',8852,'Doe',2145,119];         var randomItem = items[Math.floor(Math.random() * items.length)]; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  9 \u2014 <u>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 :<\/u><br \/>   \u0414\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u0444\u0435\u0439\u043a\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u044b, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0435\u0441\u044f \u043c\u0435\u0436\u0434\u0443 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var x = Math.floor(Math.random() * (max - min + 1)) + min; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  10 \u2014 <u>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043e\u0442 0 \u0434\u043e max :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var numbersArray = [] , max = 100;         \/\/ numbers = [0,1,2,3 ... 100]         for( var i=1; numbersArray.push(i++) &lt; max;); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  11 \u2014 <u>\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function generateRandomAlphaNum(len) {             var rdmstring = &quot;&quot;;             for( ; rdmString.length &lt; len; rdmString  += Math.random().toString(36).substr(2));             return  rdmString.substr(0, len);         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  12 \u2014 <u>\u041f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411];         numbers = numbers.sort(function(){ return Math.random() - 0.5});         \/* the array numbers will be equal for example to [120, 5, 228, -215, 400, 458, -85411, 122205]  *\/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  13 \u2014 <u>\u0424\u0443\u043d\u043a\u0446\u0438\u044f `trim()` \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u043a :<\/u><br \/>   \u041a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f `trim()`, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0435\u0441\u0442\u044c \u0432 Java, C#, PHP \u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u044f\u0437\u044b\u043a\u0430\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0431\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b, \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u0432 JavaScript. \u041e\u0434\u043d\u0430\u043a\u043e \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0435 \u043a \u043e\u0431\u044a\u0435\u043a\u0442\u0443 `String`:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         String.prototype.trim = function(){             return this.replace(\/^\\s+|\\s+$\/g, &quot;&quot;);         }; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   (\u043f\u0440\u0438\u043c. \u2014 \u043d\u0435 \u0443\u0434\u0435\u0440\u0436\u0430\u043b\u0441\u044f, \u043d\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u043e, \u0447\u0442\u043e \u0430\u0432\u0442\u043e\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0435\u043c,<br \/>   \u043a\u0430\u043a \u0431\u044b `trim()`\u0435\u0441\u0442\u044c \u0443\u0436\u0435 \u0432 JavaScript)<\/p>\n<p>  14 &#8212;<u> \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0434\u0438\u043d \u043c\u0430\u0441\u0441\u0438\u0432 \u043a \u0434\u0440\u0443\u0433\u043e\u043c\u0443 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var array1 = [12 , &quot;foo&quot; , {name &quot;Joe&quot;} , -2458];          var array2 = [&quot;Doe&quot; , 555 , 100];         Array.prototype.push.apply(array1, array2);         \/* array1 will be equal to  [12 , &quot;foo&quot; , {name &quot;Joe&quot;} , -2458 , &quot;Doe&quot; , 555 , 100] *\/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  15 \u2014 <u>\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 `arguments` \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var argArray = Array.prototype.slice.call(arguments); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  16 \u2013 <u>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0447\u0438\u0441\u043b\u043e\u043c :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function isNumber(n){             return !isNaN(parseFloat(n)) && isFinite(n);         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  17 \u2013 <u>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function isArray(obj){             return Object.prototype.toString.call(obj) === '[object Array]' ;         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0417\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435, \u0435\u0441\u043b\u0438 \u043c\u0435\u0442\u043e\u0434 `toString()` \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d, \u0442\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u043a\u0430\u043a\u043e\u0439 \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0442\u0440\u044e\u043a\u0430.<br \/>   \u0418\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         Array.isArray(obj); \/\/ its a new Array method ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0412\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c `instanceof`, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\u0435 \u0441 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0444\u0440\u0435\u0439\u043c\u043e\u0432. \u041e\u0434\u043d\u0430\u043a\u043e, \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043e\u0432, \u0442\u043e<br \/>   \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var myFrame = document.createElement('iframe');         document.body.appendChild(myFrame);          var myArray = window.frames[window.frames.length-1].Array;         var arr = new myArray(a,b,10); \/\/ [a,b,10]          \/\/ instanceof will not work correctly, myArray loses his constructor         \/\/ constructor is not shared between frames         arr instanceof Array; \/\/ false ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  18 \u2013 <u>\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435, \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var  numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411];         var maxInNumbers = Math.max.apply(Math, numbers);         var minInNumbers = Math.min.apply(Math, numbers); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  19 \u2013 <u>\u0414\u0435\u043b\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u0443\u0441\u0442\u044b\u043c :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var myArray = [12 , 222 , 1000 ];         myArray.length = 0; \/\/ myArray will be equal to []. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  20 \u2013 <u>\u041d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `delete` \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 :<\/u><br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `split` \u0432\u043c\u0435\u0441\u0442\u043e `delete`, \u0447\u0442\u043e\u0431\u044b \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u044c \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 `delete` \u043d\u0435 \u0443\u0434\u0430\u043b\u044f\u0435\u0442, \u0430 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043d\u0430 `undefined`.<br \/>   \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var items = [12, 548 ,'a' , 2 , 5478 , 'foo' , 8852, , 'Doe' ,2154 , 119 ];         items.length; \/\/ return 11         delete items[3]; \/\/ return true         items.length; \/\/ return 11         \/* items will be equal to [12, 548, &quot;a&quot;, undefined \u00d7 1, 5478, &quot;foo&quot;, 8852, undefined \u00d7 1, &quot;Doe&quot;, 2154,       119]   *\/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432\u043e\u0442 \u044d\u0442\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var items = [12, 548 ,'a' , 2 , 5478 , 'foo' , 8852, , 'Doe' ,2154 , 119 ];         items.length; \/\/ return 11         items.splice(3,1) ;         items.length; \/\/ return 10         \/* items will be equal to [12, 548, &quot;a&quot;, 5478, &quot;foo&quot;, 8852, undefined \u00d7 1, &quot;Doe&quot;, 2154,       119]   *\/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u041e\u0434\u043d\u0430\u043a\u043e `delete` \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0430.<\/p>\n<p>  21 \u2013 <u>\u0423\u0440\u0435\u0437\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f `length` :<\/u><br \/>   \u041a\u0430\u043a \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441 \u043f\u0443\u0441\u0442\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c, \u0434\u043b\u044f \u0443\u0440\u0435\u0437\u0430\u043d\u0438\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e\u043c\u00a0`length`:  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var myArray = [12 , 222 , 1000 , 124 , 98 , 10 ];         myArray.length = 4; \/\/ myArray will be equal to [12 , 222 , 1000 , 124]. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0411\u043e\u043d\u0443\u0441, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u043d\u044b \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u043e\u043b\u044c\u0448\u0435 \u0435\u0433\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0439, \u0442\u043e \u0434\u043b\u0438\u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0431\u0443\u0434\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0430, \u0430 \u043d\u043e\u0432\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b<br \/>   \u043a\u0430\u043a\u00a0`undefined`. \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0434\u043b\u0438\u043d\u044b \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         myArray.length = 10; \/\/ the new array length is 10         myArray[myArray.length - 1] ; \/\/ undefined ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  22 \u2013 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 `AND\/ OR` \u0434\u043b\u044f \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var foo = 10;         foo == 10 && doSomething(); \/\/ is the same thing as if (foo == 10) doSomething();         foo == 5 || doSomething(); \/\/ is the same thing as if (foo != 5) doSomething(); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 `OR` \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         Function doSomething(arg1){             Arg1 = arg1 || 10; \/\/ arg1 will have 10 as a default value if it\u2019s not already set         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  23 \u2013 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `map()`\u043c\u0435\u0442\u043e\u0434, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0439\u0442\u0438 \u0446\u0438\u043a\u043b\u043e\u043c \u043f\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0443 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var squares = [1,2,3,4].map(function (val) {             return val * val;         });         \/\/ squares will be equal to [1, 4, 9, 16] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  24 \u2013 <u>\u041e\u043a\u0440\u0443\u0433\u043b\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u0434\u043e N \u0447\u0438\u0441\u0435\u043b \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u044f\u0442\u043e\u0439 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var num =2.443242342;         num = num.toFixed(4);  \/\/ num will be equal to 2.4432 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  25 \u2013 <u>\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0442\u043e\u0447\u0435\u043a :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         0.1 + 0.2 === 0.3 \/\/ is false         9007199254740992 + 1 \/\/ is equal to 9007199254740992         9007199254740992 + 2 \/\/ is equal to 9007199254740994 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u041f\u043e\u0447\u0435\u043c\u0443 \u0442\u0430\u043a \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442? 0.1 + 0.2 \u0440\u0430\u0432\u043d\u044f\u0435\u0442\u0441\u044f 0.30000000000000004. \u0427\u0442\u043e \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u043d\u0430\u0442\u044c \u0442\u0430\u043a \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u0447\u0438\u0441\u043b\u0430 \u0432 JavaScript \u0441 \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u0447\u043a\u043e\u0439 \u0432\u043d\u0443\u0442\u0440\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u0430\u043a 64 \u0431\u0438\u0442\u043d\u044b\u0435 \u0432 \u0434\u0432\u043e\u0438\u0447\u043d\u043e\u043c \u0432\u0438\u0434\u0435 \u043f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 IEEE 754. <br \/>   \u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 &#8212;\u00a0\u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0439 <a href=\"http:\/\/www.2ality.com\/2012\/04\/number-encoding.html\">\u0431\u043b\u043e\u0433<\/a>.<br \/>   \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u044b\u00a0`toFixed()`\u00a0\u0438\u00a0`toPrecision()`, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c.<\/p>\n<p>  26 \u2013 <u>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0439\u0442\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c `for-in` \u0446\u0438\u043a\u043b\u043e\u043c :<\/u><br \/>   \u0414\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0430.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         for (var name in object) {             if (object.hasOwnProperty(name)) {                 \/\/ do something with name             }         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  27 \u2013 <u>\u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0437\u0430\u043f\u044f\u0442\u0430\u044f :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var a = 0;         var b = ( a++, 99 );         console.log(a);  \/\/ a will be equal to 1         console.log(b);  \/\/ b is equal to 99 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  28 \u2013 <u>\u041a\u0435\u0448\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438\u043b\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 :<\/u><br \/>   \u041d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 jQuery \u0441\u0435\u043b\u0435\u043a\u0442\u043e\u0440\u043e\u0432, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043a\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u2014 DOM \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var navright = document.querySelector('#right');         var navleft = document.querySelector('#left');         var navup = document.querySelector('#up');         var navdown = document.querySelector('#down'); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  29 \u2013 <u>\u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043f\u0440\u0435\u0436\u0434\u0435, \u0447\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432 isFinite()` :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         isFinite(0\/0) ; \/\/ false         isFinite(&quot;foo&quot;); \/\/ false         isFinite(&quot;10&quot;); \/\/ true         isFinite(10);   \/\/ true         isFinite(undifined);  \/\/ false         isFinite();   \/\/ false         isFinite(null);  \/\/ true  !!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  30 \u2013 <u>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u0445 :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var numbersArray = [1,2,3,4,5];         var from = numbersArray.indexOf(&quot;foo&quot;) ;  \/\/ from is equal to -1         numbersArray.splice(from,2);    \/\/ will return [5] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0435 `indexOf` \u043d\u0435 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b.<\/p>\n<p>  31 \u2013 <u>\u0421\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f (\u0434\u043b\u044f JSON) :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var person = {name :'Saad', age : 26, department : {ID : 15, name : &quot;R&D&quot;} };         var stringFromPerson = JSON.stringify(person);         \/* stringFromPerson is equal to &quot;{&quot;name&quot;:&quot;Saad&quot;,&quot;age&quot;:26,&quot;department&quot;:{&quot;ID&quot;:15,&quot;name&quot;:&quot;R&D&quot;}}&quot;   *\/         var personFromString = JSON.parse(stringFromPerson);         \/* personFromString is equal to person object  *\/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  32 \u2013 <u>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 `eval()`\u00a0\u0438\u043b\u0438\u00a0`Function`\u00a0\u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430 :<\/u><br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u00a0`eval`\u00a0\u0438\u043b\u0438\u00a0`Function`\u00a0\u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430 \u0434\u043e\u0440\u043e\u0433\u043e\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0442\u0430\u043a \u043a\u0430\u043a \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043e\u043d\u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0434\u0432\u0438\u0436\u043a\u043e\u043c javascript.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var func1 = new Function(functionCode);         var func2 = eval(functionCode); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  33 \u2013 <u>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435\u00a0`with`\u00a0(\u0425\u043e\u0440\u043e\u0448\u0430\u044f \u0448\u0442\u0443\u043a\u0430) :<\/u><br \/>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u00a0`with`\u00a0\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e. \u0415\u0441\u043b\u0438 \u043a\u0430\u043a\u0430\u044f-\u043b\u0438\u0431\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0442\u0430\u043a\u043e\u0435 \u0436\u0435 \u0438\u043c\u044f, \u0442\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0442\u0430\u043a \u043a\u0430\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0442\u0438 \u0437\u0430\u0442\u0438\u0440\u0430\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p>  34 \u2013 <u>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 `for-in` \u0446\u0438\u043a\u043b\u043e\u0432 \u0434\u043b\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 :<\/u><br \/>   \u0412\u043c\u0435\u0441\u0442\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var sum = 0;         for (var i in arrayNumbers) {             sum += arrayNumbers[i];         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u2026\u043b\u0443\u0447\u0448\u0435 \u044d\u0442\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var sum = 0;         for (var i = 0, len = arrayNumbers.length; i &lt; len; i++) {             sum += arrayNumbers[i];         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u0411\u043e\u043d\u0443\u0441, \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u0438\u0435 \u0434\u043b\u044f\u00a0`i`\u00a0\u0438\u00a0`len`\u00a0\u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043e \u043b\u0438\u0448\u044c \u043e\u0434\u043d\u0430\u0436\u0434\u044b \u0442\u0430\u043a \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u0435\u0440\u0432\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0446\u0438\u043a\u043b\u0430. \u042d\u0442\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         for (var i = 0; i &lt; arrayNumbers.length; i++) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u041f\u043e\u0447\u0435\u043c\u0443? \u0414\u043b\u0438\u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u00a0`arrayNumbers`\u00a0\u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0438 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<p>  35 \u2013 <u>\u041f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0430 \u043d\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0434\u043b\u044f\u00a0`setTimeout()`\u00a0\u0438\u00a0`setInterval()` :<\/u><br \/>   \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432\u00a0`setTimeout()`\u00a0\u0438\u043b\u0438\u00a0`setInterval()`, \u0442\u043e \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u043a \u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c\u00a0`eval`, \u044d\u0442\u043e \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e.<\/p>\n<p>  \u0412\u043c\u0435\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         setInterval('doSomethingPeriodically()', 1000);         setTimeOut('doSomethingAfterFiveSeconds()', 5000); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u2026\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         setInterval(doSomethingPeriodically, 1000);         setTimeOut(doSomethingAfterFiveSeconds, 5000); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  36 \u2013 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `switch\/case` \u0432\u043c\u0435\u0441\u0442\u043e \u0441\u0435\u0440\u0438\u0438 \u0438\u0437 `if\/else` :<\/u><br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 `switch\/case` \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e, \u043a\u043e\u0433\u0434\u0430 \u0431\u043e\u043b\u0435\u0435 \u0434\u0432\u0443\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439, \u044d\u0442\u043e \u0431\u043e\u043b\u0435\u0435 \u044d\u043b\u0435\u0433\u0430\u043d\u0442\u043d\u043e \u0438 \u043b\u0443\u0447\u0448\u0435 \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0434\u0430. \u0418\u0437\u0431\u0435\u0439\u0433\u0430\u0442\u0435 \u044d\u0442\u043e\u0433\u043e<br \/>   \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0433\u0434\u0430 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u0435\u0435 10 \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439.<\/p>\n<p>  37 \u2013 <u>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 `switch\/case` \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430\u043c\u0438 :<\/u><br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 `switch\/case` \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u043c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u043e\u043c \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0442\u0440\u044e\u043a.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function getCategory(age) {             var category = &quot;&quot;;             switch (true) {                 case isNaN(age):                     category = &quot;not an age&quot;;                     break;                 case (age &gt;= 50):                     category = &quot;Old&quot;;                     break;                 case (age &lt;= 20):                     category = &quot;Baby&quot;;                     break;                 default:                     category = &quot;Young&quot;;                     break;             };             return category;         }         getCategory(5);  \/\/ will return &quot;Baby&quot; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  38 \u2013 <u>\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442, \u0447\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u2014 \u044d\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 :<\/u><br \/>   \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442, \u0447\u044c\u0438\u043c \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function clone(object) {             function OneShotConstructor(){};             OneShotConstructor.prototype= object;             return new OneShotConstructor();         }         clone(Array).prototype ;  \/\/ [] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  39 \u2013 <u>HTML escaper :<\/u>  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         function escapeHTML(text) {             var replacements= {&quot;&lt;&quot;: &quot;&lt;&quot;, &quot;&gt;&quot;: &quot;&gt;&quot;,&quot;&&quot;: &quot;&amp;&quot;, &quot;\\&quot;&quot;: &quot;&quot;&quot;};             return text.replace(\/[&lt;&gt;&&quot;]\/g, function(character) {                 return replacements[character];             });         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  40 \u2013 <u>\u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f `try-catch-finally` \u0432\u043d\u0443\u0442\u0440\u0438 \u0446\u0438\u043a\u043b\u043e\u0432 :<\/u><br \/>   `try-catch-finally` \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u043d\u043e\u0432\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043e\u043d\u043e \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439.<\/p>\n<p>  \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var object = ['foo', 'bar'], i;         for (i = 0, len = object.length; i &lt;len; i++) {             try {                 \/\/ do something that throws an exception             }             catch (e) {                 \/\/ handle exception             }         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u2026\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044d\u0442\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var object = ['foo', 'bar'], i;         try {             for (i = 0, len = object.length; i &lt;len; i++) {                 \/\/ do something that throws an exception             }         }         catch (e) {             \/\/ handle exception         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  41 \u2013<u> \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0439\u0442\u0435 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u0434\u043b\u044f\u00a0`XMLHttpRequests` :<\/u><br \/>   \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435, \u0435\u0441\u043b\u0438 XHR \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0432\u0440\u0435\u043c\u044f (\u043a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b), \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u00a0`setTimeout()`\u00a0\u0441 \u0432\u044b\u0437\u043e\u0432\u0430\u043c\u0438<br \/>   XHR.  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var xhr = new XMLHttpRequest ();         xhr.onreadystatechange = function () {             if (this.readyState == 4) {                 clearTimeout(timeout);                 \/\/ do something with response data             }         }         var timeout = setTimeout( function () {             xhr.abort(); \/\/ call error callback         }, 60*1000 \/* timeout after a minute *\/ );         xhr.open('GET', url, true);          xhr.send(); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u041a\u0430\u043a \u0431\u043e\u043d\u0443\u0441, \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 Ajax.<\/p>\n<p>  42 \u2013 <u>Deal with WebSocket timeout<\/u><br \/>   \u041e\u0431\u044b\u0447\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0441\u0435\u0440\u0432\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0443 \u043f\u043e\u0441\u043b\u0435 30 \u0441\u0435\u043a\u0443\u043d\u0434 \u043d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438. \u0424\u0430\u0435\u0440\u0432\u043e\u043b \u043c\u043e\u0436\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0441\u043b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0443 \u0438\u0437-\u0437\u0430 \u043d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438.<br \/>   \u0414\u0430\u043d\u043d\u0443\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0443\u0442\u0435\u043c \u043f\u043e\u0441\u044b\u043b\u043e\u043a \u043f\u0443\u0441\u0442\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u0441\u0435\u0440\u0432\u0435\u0440\u0443. \u0427\u0442\u043e\u0431 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e, \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0432\u0430\u0448 \u043a\u043e\u0434: \u043e\u0434\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0438 \u0434\u0440\u0443\u0433\u0430\u044f, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u0443 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443.<br \/>   \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u0442\u0440\u044e\u043a, \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u043e\u043c.<\/p>\n<p>  \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c\u00a0`timerID`\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var timerID = 0;         function keepAlive() {             var timeout = 15000;             if (webSocket.readyState == webSocket.OPEN) {                 webSocket.send('');             }             timerId = setTimeout(keepAlive, timeout);         }         function cancelKeepAlive() {             if (timerId) {                 cancelTimeout(timerId);             }         } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   `keepAlive()` \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0435\u0446\u00a0`onOpen()`\u00a0\u043c\u0435\u0442\u043e\u0434\u0430 \u0434\u043b\u044f webSocket<br \/>   \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0438\u00a0`cancelKeepAlive()`\u00a0\u0432 \u043a\u043e\u043d\u0435\u0446\u00a0`onClose()`\u00a0\u043c\u0435\u0442\u043e\u0434\u0430.<\/p>\n<p>  43 \u2013 <u><a href=\"http:\/\/dev.opera.com\/articles\/view\/efficient-javascript\/?page=2#primitiveoperator\">\u041f\u043e\u043c\u043d\u0438\u0442\u0435, \u0447\u0442\u043e \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u0432\u044b\u0437\u043e\u0432\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439.<\/a><\/u><br \/>   \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c <a href=\"http:\/\/vanilla-js.com\/\">VanillaJS<\/a><\/p>\n<p>  \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430, \u0432\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var min = Math.min(a,b);         A.push(v); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>   \u2026\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u044d\u0442\u043e\u2026  <\/p>\n<pre><code class=\"javascript\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~         var min = a &lt; b ? a b;         A[A.length] = v; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <\/code><\/pre>\n<p>  44 \u2013 <u>\u041d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043f\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0438 \u0441\u0442\u0438\u043b\u0438\u0441\u0442\u0438\u043a\u0435 \u043a\u043e\u0434\u0430.<br \/>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 JSLint \u0438 \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044e (JSMin, \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430) \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c, \u043a\u0430\u043a \u043a\u043e\u0434 \u043d\u0430\u0447\u043d\u0435\u0442 \u0436\u0438\u0442\u044c.<\/u><\/p>\n<p>  45 \u2013 <u>JavaScript \u043f\u0440\u043e\u0441\u0442\u043e \u0448\u0438\u0438\u0438\u0438\u043a\u0430\u0430\u0430\u0440\u0435\u043d:\u00a0<a href=\"http:\/\/stackoverflow.com\/questions\/11246\/best-resources-to-learn-javascript\">Best Resources To Learn JavaScript.<\/a><\/u><\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u0415\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0435\u0441\u0442\u044c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0438 \u0442\u0440\u044e\u043a\u043e\u0432 \u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u0435\u0441\u0442\u044c, \u0447\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c, \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c \u0438\u043b\u0438 \u0432\u043d\u0435\u0441\u0442\u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u2014 \u043f\u0438\u0448\u0438\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<h3>\u0421\u0441\u044b\u043b\u043e\u0447\u043a\u0438<\/h3>\n<p>  \u041f\u0440\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0441\u0432\u043e\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u043b\u044f \u043a\u043e\u0434\u0430, \u043e\u0434\u043d\u0430\u043a\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0431\u044b\u043b\u0438 \u043d\u0430\u0432\u0435\u044f\u043d\u044b \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0442\u0430\u0442\u0435\u0439 \u0438 \u0444\u043e\u0440\u0443\u043c\u043e\u0432:  <\/p>\n<ul>\n<li><a href=\"http:\/\/developer.nokia.com\/Community\/Wiki\/JavaScript_Performance_Best_Practices\">JavaScript Performance Best Practices<\/a>\u00a0(<a href=\"http:\/\/creativecommons.org\/licenses\/by-nc-sa\/2.5\/\">CC<\/a>)<\/li>\n<li><a href=\"https:\/\/code.google.com\/p\/jslibs\/wiki\/JavascriptTips\">Google Code JavaScript tips<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/724826\/javascript-tips-and-tricks-javascript-best-practices\">StackOverFlow tips and tricks<\/a><\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/6888409\/settimeout-for-xhr-requests\">TimeOut for XHR<\/a><\/li>\n<\/ul>\n<h2> <i>\u0410 \u0432\u043e\u0442 \u0438 \u0441\u043a\u0430\u0437\u043e\u0447\u043a\u0438 \u043a\u043e\u043d\u0435\u0446&#8230;.<\/i><\/h2>\n<p>  \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0438 \u0438\u0437\u043b\u043e\u0436\u0435\u043d\u043e \u0432 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435. \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u043d \u0431\u044b\u043b \u0445\u043e\u0440\u043e\u0448 \u0438\u043b\u0438 \u043d\u0435\u0442, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b \u0431\u044b\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u044b \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u043c\u043d\u044b \u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b \u0431\u044b\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b. <br \/>  \u041c\u043e\u044f \u0437\u0430\u0434\u0430\u0447\u0430, \u043a\u0430\u043a \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0442\u043e\u0440\u0430, \u0431\u044b\u043b\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u0441\u0443\u0434 \u0433\u043e\u0432\u043e\u0440\u044f\u0449\u0435\u0439, \u043a\u0438\u043f\u044f\u0449\u0435\u0439 \u043e\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0438\u043d\u0430\u043f\u0441\u043e\u0432 \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u0438. \u0410 \u0443\u0436 \u0437\u0430\u0447\u0435\u043c \u0435\u043c\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u044d\u0442\u043e \u043d\u0430\u0434\u043e \u2014 \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0435\u0448\u0430\u0435\u0442 \u0437\u0430 \u0441\u0435\u0431\u044f.<br \/>  \u041a\u0442\u043e \u0437\u0430\u0445\u043e\u0447\u0435\u0442 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441 \u0430\u0432\u0442\u043e\u0440\u043e\u043c, \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u2014 \u043f\u0440\u043e\u0439\u0434\u0438\u0442\u0435 \u043f\u043e \u0441\u0441\u044b\u043b\u043e\u0447\u043a\u0430\u043c. \u041f\u0440\u043e\u0431\u0435\u0433\u0438\u0442\u0435\u0441\u044c \u043f\u043e \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u0447\u0442\u043e \u043c\u043e\u044f \u0441\u043a\u0440\u043e\u043c\u043d\u0430\u044f \u043a\u043e\u043f\u0438\u044f \u043f\u0440\u0438\u043d\u0435\u0441\u043b\u0430 \u0432\u0430\u043c \u043f\u043e\u043b\u044c\u0437\u044b, \u043d\u0435 \u043e\u0442\u043d\u044f\u043b\u0430 \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438.<\/p>\n<p>  <i>\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435!<\/i><\/p>\n<p>  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br \/>  <a href=\"http:\/\/flippinawesome.org\/2013\/12\/23\/45-useful-javascript-tips-tricks-and-best-practices\/\">\u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0442\u0435\u043a\u0441\u0442\u0430<\/a><br \/>  \u0410\u0432\u0442\u043e\u0440 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430: \u0421\u0430\u0430\u0434 \u041c\u0443\u0441\u043b\u0438\u043a\u0438 (<a href=\"http:\/\/flippinawesome.org\/authors\/saad-mousliki\/\">\u0421\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0433\u0435\u0440\u043e\u044f<\/a>)<br \/>  *\u0414\u0435\u043a\u0430\u0431\u0440\u044c 23, 2013*<br \/>  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \t\t\t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/208570\/\"> http:\/\/habrahabr.ru\/post\/208570\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\"> \t\t\t\u041e\u0434\u043d\u0438\u043c \u0432\u0435\u0447\u0435\u0440\u043e\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0447\u0435\u0433\u043e, \u043b\u0438\u0441\u0442\u0430\u044f \u0431\u0435\u043b\u044b\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430, \u0432 \u043f\u043e\u0438\u0441\u043a\u0430\u0445 \u0447\u0435\u0433\u043e \u0431\u044b \u0442\u0430\u043a\u043e\u0433\u043e \u043c\u043d\u0435 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0430 \u0441\u043e\u043d \u0433\u0440\u044f\u0434\u0443\u0449\u0438\u0439, \u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f \u044f \u043d\u0430 \u043e\u0434\u043d\u0443 \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u0435\u0439\u043a\u0443 \u2013 \u043d\u0430 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u043c \u043c\u043d\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0435, \u043e\u0442 \u0430\u0432\u0442\u043e\u0440\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u043d\u0430\u0442\u044c \u043d\u0435 \u0437\u043d\u0430\u044e, \u0441\u043b\u044b\u0445\u0430\u0442\u044c \u043d\u0435 \u0441\u043b\u044b\u0445\u0430\u043b. \u0427\u0442\u0438\u0432\u043e \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u043c, \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0431\u043b\u0438\u0437\u043a\u043e \u043f\u043e \u0440\u043e\u0434\u0443 \u0434\u0435\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u043e \u0444\u043e\u0440\u043c\u0435 \u0438 \u0435\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044e. <br \/>  \u041f\u0440\u0430\u0432\u0434\u0430, \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0432\u043e \u0432\u0441\u0435\u043c \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u043b\u0441\u044f \u0441 \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u0438\u0437\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435, \u043a \u0442\u043e\u043c\u0443 \u0436\u0435 \u043c\u043d\u043e\u0433\u043e \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0431\u0430\u0437\u0438\u0441\u043d\u044b\u0445 \u0432\u0435\u0449\u0435\u0439, \u043d\u043e \u043f\u043e\u0434\u0443\u043c\u0430\u043b, \u0447\u0442\u043e \u043e\u043d\u0430 \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043d\u0430\u0441\u0435\u043b\u0435\u043d\u0438\u044f \u2013 \u043a\u043e\u043c\u0443 \u0432\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043b\u0435\u043d\u044c, \u043d\u043e \u043b\u044e\u0431\u0438\u0442 \u0447\u0442\u043e\u0431\u044b \u043a\u0440\u0430\u0442\u043a\u043e, \u0441 \u0442\u043e\u043b\u043a\u043e\u043c, \u0441 \u0440\u0430\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0438 \u043f\u043e \u0434\u0435\u043b\u0443 \u0431\u0435\u0437 \u043b\u0438\u0448\u043d\u0435\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0449\u0438\u043d\u044b. <br \/>  \u0415\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0432\u0441\u0435 \u043d\u0438\u0436\u0435 \u0438\u0437\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u043e\u0442\u043d\u044e\u0434\u044c \u043d\u0435 \u0435\u0441\u0442\u044c \u0438\u0441\u0442\u0438\u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0438\u043d\u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u043a\u0430\u043a \u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u0438, \u043d\u0430 \u043d\u0435\u0439 \u043a\u043b\u044f\u0441\u0442\u044c\u0441\u044f \u044f \u0431\u044b \u043d\u0435 \u0441\u043e\u0432\u0435\u0442\u043e\u0432\u0430\u043b. \u041d\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0442\u043e-\u0442\u043e \u043e\u0442\u043a\u0440\u043e\u0435\u0442 \u043a\u0430\u043a\u0438\u0435 \u0432\u0435\u0449\u0438 \u0441 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0430 \u043a\u0442\u043e \u2013 \u0442\u043e \u043f\u043e\u043a\u0440\u0438\u0442\u0438\u043a\u0443\u0435\u0442, \u0432\u044b\u0441\u043a\u0430\u0437\u0430\u0432 \u0441\u0432\u043e\u0435 \u0427\u0421\u0412\u0435\u0448\u043d\u043e\u0435: \u00ab\u0424\u0438 \u0444\u0438 \u0444\u0438, \u0444\u0430 \u0444\u0430 \u0444\u0430!\u00bb. <br \/>  \u041e\u0434\u043d\u0430\u043a\u043e \u043e\u0431\u043e \u0432\u0441\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u0432 \u043c\u043e\u0435\u043c \u0441\u0432\u043e\u0435\u0432\u043e\u043b\u044c\u043d\u043e\u043c \u043e\u0442 \u043b\u0438\u0446\u0430 \u043f\u0435\u0440\u0432\u043e\u0433\u043e\u2026  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-208570","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/208570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=208570"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/208570\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=208570"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=208570"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=208570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}