{"id":277808,"date":"2016-04-07T01:41:02","date_gmt":"2016-04-06T21:41:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=277808"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=277808","title":{"rendered":"ES5 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e JavaScript"},"content":{"rendered":"<p>       <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/2cc\/b9b\/314\/2ccb9b3146ac4f5d8128460b6385d740.jpg\" align=\"left\"\/>   <\/p>\n<h4><b>JavaScript quality guide<\/b><\/h4>\n<p>  \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0439 \u043b\u044e\u0431\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. <\/p>\n<h4><b>\u041e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/b><\/h4>\n<p>  \u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u0441 \u0432\u0430\u043c\u0438 \u041c\u0430\u043a\u0441\u0438\u043c \u0418\u0432\u0430\u043d\u043e\u0432, \u0438 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e <a href=\"https:\/\/github.com\/bevacqua\/js\">\u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript<\/a>. <a href=\"https:\/\/dribbble.com\/bdc\">\u041d\u0438\u043a\u043e\u043b\u044f \u0411\u044d\u0432\u0430\u043a\u0443\u0430<\/a> (Nicol\u00e1s Bevacqua), \u0430\u0432\u0442\u043e\u0440 \u043a\u043d\u0438\u0433\u0438 \u00ab\u0414\u0438\u0437\u0430\u0439\u043d JavaScript-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439\u00bb (JavaScript Application Design), \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0438\u0437 \u0410\u0440\u0433\u0435\u043d\u0442\u0438\u043d\u044b, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0434\u0430\u043d\u043d\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u0430\u0432\u043d\u043e, \u043f\u0435\u0440\u0432\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0435\u0449\u0435 \u0432 2014 \u0433\u043e\u0434\u0443, \u043c\u043d\u043e\u0433\u043e\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 ES5, \u043e\u0434\u043d\u0430\u043a\u043e, \u0432 \u043d\u0430\u0448\u0438 \u0434\u043d\u0438 \u044d\u0442\u043e \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e, \u0441\u0435\u0439\u0447\u0430\u0441, \u043a\u043e\u0433\u0434\u0430 ES6 \u0435\u0449\u0435 \u043d\u0438\u0433\u0434\u0435 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 babel \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u0442\u0440\u0430\u043d\u0441\u043f\u0430\u0439\u043b\u0435\u0440\u043e\u0432. \u0425\u043e\u0442\u044f \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u0432 \u0442\u043e\u043f\u043e\u0432\u044b\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u043d\u044b\u0445 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445 (Google Crhome, Firefox), \u0433\u0434\u0435 \u0443\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e 70-90% \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043d\u043e\u0433\u043e, \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u0441\u0442\u0440\u0435\u043c\u044f\u0442\u0441\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442, \u043d\u043e, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, <a href=\"https:\/\/kangax.github.io\/compat-table\/es6\/\">\u0435\u0449\u0451 \u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c ES6<\/a>. \u041a \u0441\u043b\u043e\u0432\u0443, \u044f \u0431\u0443\u0434\u0443 \u043e\u0447\u0435\u043d\u044c \u0440\u0430\u0434 \u0432\u0430\u0448\u0438\u043c \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u043c. \u0412 \u043e\u0431\u0449\u0435\u043c, \u0443\u0434\u0430\u0447\u0438 \u0438 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0430\u0447\u043d\u0435\u043c.<br \/>  <a name=\"habracut\"><\/a><\/p>\n<h4><b>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/b><\/h4>\n<p>  \u042d\u0442\u0438 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043d\u0435 \u0432\u044b\u0441\u0435\u0447\u0435\u043d\u044b \u043d\u0430 \u043a\u0430\u043c\u043d\u0435, \u044d\u0442\u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043c\u043e\u0433\u0443\u0442 \u0432\u0430\u043c \u043d\u0430\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0439 \u043a\u043e\u0434. \u0427\u0442\u043e\u0431\u044b \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430, \u043d\u0430\u0447\u043d\u0438\u0442\u0435 \u043f\u0440\u044f\u043c\u043e \u0441\u0435\u0439\u0447\u0430\u0441, \u0434\u0435\u043b\u0438\u0442\u0435\u0441\u044c \u0438\u043c\u0438 \u0441\u043e \u0441\u0432\u043e\u0438\u043c\u0438 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c\u0438 \u0438 \u0432\u043d\u0435\u0434\u0440\u044f\u0439\u0442\u0435 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u043e. \u041e\u0434\u043d\u0430\u043a\u043e, \u043d\u0435 \u0437\u0430\u0446\u0438\u043a\u043b\u0438\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u044d\u0442\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445, \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0431\u0435\u0441\u043f\u043b\u043e\u0434\u043d\u044b\u043c \u0438 \u043a\u043e\u043d\u0442\u0440\u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u044b\u043c. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 \u0437\u043e\u043b\u043e\u0442\u0443\u044e \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0443, \u0447\u0442\u043e\u0431\u044b \u0432\u0441\u0435\u043c \u0431\u044b\u043b\u043e \u043a\u043e\u043c\u0444\u043e\u0440\u0442\u043d\u043e \u0432 \u0432\u0430\u0448\u0435\u043c \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u0438\u0432\u0435. \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u0442\u0438\u043b\u044f \u043a\u043e\u0434\u0430 \u044d\u0442\u043e \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u0430\u044f \u0432\u0435\u0449\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u0441\u0442\u0438\u043b\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u044d\u0442\u043e \u0434\u0435\u043b\u043e \u043a\u0430\u0436\u0434\u043e\u0433\u043e.<\/p>\n<h4><b>\u0421\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435<\/b><\/h4>\n<p>  <\/p>\n<ol>\n<li><a href=\"#one\">\u041c\u043e\u0434\u0443\u043b\u0438<\/a> <\/li>\n<li><a href=\"#two\">\u0421\u0442\u0440\u043e\u0433\u0438\u0439 \u0440\u0435\u0436\u0438\u043c<\/a> <\/li>\n<li><a href=\"#three\">\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432<\/a> <\/li>\n<li><a href=\"#four\">\u0422\u043e\u0447\u043a\u0430 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/a> <\/li>\n<li><a href=\"#five\">\u0421\u0442\u0438\u043b\u044c \u043a\u043e\u0434\u0430<\/a> <\/li>\n<li><a href=\"#six\">\u0410\u043d\u0430\u043b\u0438\u0437 \u043a\u043e\u0434\u0430 \u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438<\/a> <\/li>\n<li><a href=\"#seven\">\u0421\u0442\u0440\u043e\u043a\u0438<\/a> <\/li>\n<li><a href=\"#eight\">\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445<\/a> <\/li>\n<li><a href=\"#night\">\u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438<\/a> <\/li>\n<li><a href=\"#ten\">\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f<\/a> <\/li>\n<li><a href=\"#eleven\">\u0422\u0435\u0440\u043d\u0430\u0440\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440<\/a> <\/li>\n<li><a href=\"#twelve\">\u0424\u0443\u043d\u043a\u0446\u0438\u0438<\/a> <\/li>\n<li><a href=\"#thirteen\">\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0438 \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f<\/a> <\/li>\n<li><a href=\"#fourteen\">\u041e\u0431\u044a\u0435\u043a\u0442\u044b<\/a> <\/li>\n<li><a href=\"#fifteen\">\u041c\u0430\u0441\u0441\u0438\u0432\u044b<\/a> <\/li>\n<li><a href=\"#sixteen\">\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a> <\/li>\n<li><a href=\"#seventeen\">\u041a\u043e\u043d\u0441\u043e\u043b\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430<\/a> <\/li>\n<li><a href=\"#eighteen\">\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438<\/a> <\/li>\n<li><a href=\"#nineteen\">\u0418\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435<\/a> <\/li>\n<li><a href=\"#twenty\">Polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438<\/a> <\/li>\n<li><a href=\"#twenty-one\">\u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0445\u0438\u0442\u0440\u043e\u0441\u0442\u0438<\/a> <\/li>\n<li><a href=\"#twenty-two\">\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e ES6<\/a> <\/li>\n<\/ol>\n<h4><b><a name=\"one\"><\/a>\u041c\u043e\u0434\u0443\u043b\u0438<\/b><\/h4>\n<p>  \u042d\u0442\u043e\u0442 \u043f\u0443\u043d\u043a\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a CommonJS, AMD, ES6 Modules, \u0438\u043b\u0438 \u043b\u044e\u0431\u044b\u0435 \u0434\u0440\u0443\u0433\u0438\u0435. \u041c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0441 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u044c\u044e \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043d\u0435 \u0437\u0430\u0442\u0440\u0430\u0433\u0438\u0432\u0430\u044f \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b, \u0442\u0430\u043a\u0436\u0435 \u043e\u043d\u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0442 \u0431\u043e\u043b\u0435\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u043e\u0434\u0430 \u0437\u0430 \u0441\u0447\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439, \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u044f \u0432\u0430\u0441 \u043e\u0442 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u0433\u0430 <i>&lt;script&gt;<\/i>.<\/p>\n<p>  \u041c\u043e\u0434\u0443\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0434\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b \u0434\u043b\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e<\/b>:<\/h5>\n<p>  1. <a href=\"https:\/\/learn.javascript.ru\/modules#\u0447\u0442\u043e-\u0442\u0430\u043a\u043e\u0435-\u043c\u043e\u0434\u0443\u043b\u044c\">\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043c\u043e\u0434\u0443\u043b\u044c?<\/a><br \/>  2. <a href=\"http:\/\/largescalejs.ru\/commonjs-modules\/\">\u041c\u043e\u0434\u0443\u043b\u0438 CommonJS<\/a><br \/>  3. <a href=\"https:\/\/www.youtube.com\/watch?v=EMsAsFBdSR4\">\u041c\u043e\u0434\u0443\u043b\u0438 \u0432 JS<\/a><\/p>\n<h4><b><a name=\"two\"><\/a>\u0421\u0442\u0440\u043e\u0433\u0438\u0439 \u0440\u0435\u0436\u0438\u043c<\/b><\/h4>\n<p>  \u0412\u0441\u0435\u0433\u0434\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <i>&#8216;use strict&#8217;;<\/i> \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f. \u0421\u0442\u0440\u043e\u0433\u0438\u0439 \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0442\u043b\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0438 \u044f\u0437\u044b\u043a\u0430, \u0445\u043e\u0442\u044c \u044d\u0442\u043e \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0440\u0430\u0448\u043d\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u0442\u0430\u043a\u043e\u0439 \u0440\u0435\u0436\u0438\u043c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0443 \u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0437\u0430 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0432\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u0434\u0430, \u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0432\u044b \u0442\u0440\u0430\u0442\u0438\u0442\u0435 \u043c\u0435\u043d\u044c\u0448\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0430 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/\">\u0414\u0438\u0440\u0435\u043a\u0442\u0438\u0432\u0430 use strict<\/a><br \/>  2. <a href=\"http:\/\/www.youtube.com\/watch?v=GVC19cEmPjM&amp;list=PL363QX7S8MfSxcHzvkNEqMYbOyhLeWwem&amp;index=30\">Strict Mode<\/a><\/p>\n<h4><b><a name=\"three\"><\/a>\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432<\/b><\/h4>\n<p>  \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0439\u0442\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u043f\u0440\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043a\u043e\u0434\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 <i>.editorconfig<\/i>. \u042f \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438.<\/p>\n<pre><code class=\"php\"># editorconfig.org root = true  [*] indent_style = space indent_size = 2 end_of_line = lf charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true  [*.md] trim_trailing_whitespace = false <\/code><\/pre>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u0432\u0430\u0448\u0435 \u043b\u0438\u0447\u043d\u043e\u0435 \u0434\u0435\u043b\u043e, \u043e\u0434\u043d\u0430\u043a\u043e \u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f\u044b \u0432 \u0434\u0432\u0430 \u043f\u0440\u043e\u0431\u0435\u043b\u0430. \u0424\u0430\u0439\u043b <i>.editorconfig<\/i> \u043f\u043e\u0437\u0430\u0431\u043e\u0442\u0438\u0442\u0441\u044f \u043e\u0431\u043e \u0432\u0441\u0435\u043c, \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b \u043d\u0430\u0436\u043c\u0435\u0442\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0443 Tab. <\/p>\n<p>  \u041c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0443\u044e \u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u044e, \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 \u043e\u0442\u0441\u0442\u0443\u043f\u044b \u0432 \u043d\u0443\u0436\u043d\u044b\u0445 \u043c\u0435\u0441\u0442\u0430\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e, \u043f\u043e\u0441\u043b\u0435 \u0438\u043b\u0438 \u043c\u0435\u0436\u0434\u0443 \u0447\u0435\u043c-\u043b\u0438\u0431\u043e. \u041f\u0440\u0430\u0432\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u043d\u0430\u0434 \u0442\u0430\u043a\u0438\u043c\u0438 \u0432\u0435\u0449\u0430\u043c\u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0442\u0440\u0443\u0434\u043e\u0435\u043c\u043a\u043e\u0435 \u0437\u0430\u043d\u044f\u0442\u0438\u0435. <\/p>\n<pre><code class=\"javascript\">function () {} function( a, b ){} function(a, b) {} function (a,b) {} <\/code><\/pre>\n<p>  \u0421\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u0441\u0432\u0435\u0441\u0442\u0438 \u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u043a\u043e\u0434\u0430.<\/p>\n<p>  \u0422\u0430\u043c, \u0433\u0434\u0435 \u044d\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0443\u043b\u0443\u0447\u0448\u0430\u0439\u0442\u0435 \u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u0434\u0430, \u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c 80 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/editorconfig.org\/\">EditorConfig<\/a><br \/>  2. <a href=\"https:\/\/habrahabr.ru\/post\/220131\/\">\u041e\u0434\u043d\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u043e\u0432<\/a><br \/>  3.<a href=\"https:\/\/www.youtube.com\/watch?v=p1Ti0wSGG54\"> \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 EditorConfig \u0432 Sublime text 3<\/a><br \/>  4. <a href=\"http:\/\/stackoverflow.com\/questions\/25900954\/80-characters-right-margin-line-in-sublime-text-3\">80-characters<\/a><br \/>  5. <a href=\"http:\/\/cppstudio.com\/post\/2779\/\">\u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u0441\u0442\u0438\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/a><\/p>\n<h4><b><a name=\"four\"><\/a>\u0422\u043e\u0447\u043a\u0430 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/b><\/h4>\n<p>  \u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e JavaScript-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u044e\u0442 <a href=\"http:\/\/dailyjs.com\/2012\/12\/24\/817-javascript-survey-results\/\">\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/a>. \u0422\u043e\u0447\u043a\u0443 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 (ASI). \u0415\u0441\u0442\u044c \u044f\u0437\u044b\u043a\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0442\u043e\u0447\u043a\u0430 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u0430, \u0438 \u0435\u0451 \u0442\u0430\u043c \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0441\u0442\u0430\u0432\u0438\u0442. \u0412 JavaScript \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0440\u043e\u043a\u0438 \u0435\u0451 \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442, \u043d\u043e \u043b\u0438\u0448\u044c \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043b\u0443\u0447\u0448\u0435 \u0435\u0451 \u0441\u0442\u0430\u0432\u0438\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 <a href=\"http:\/\/blog.izs.me\/post\/2353458699\/an-open-letter-to-javascript-leaders-regarding\">ASI<\/a>. <\/p>\n<p>  \u041d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0432 \u0441\u0432\u043e\u0435\u043c \u043a\u043e\u0434\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440 (linter), \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043b\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043d\u0435\u043d\u0443\u0436\u043d\u044b\u0435 \u0442\u043e\u0447\u043a\u0438 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/dailyjs.com\/2012\/12\/24\/817-javascript-survey-results\/\">JavaScript Semicolon Insertion<\/a><br \/>  2. <a href=\"https:\/\/learn.javascript.ru\/coding-style#\u0442\u043e\u0447\u043a\u0430-\u0441-\u0437\u0430\u043f\u044f\u0442\u043e\u0439\">\u0421\u043e\u0432\u0435\u0442\u044b \u043f\u043e \u0441\u0442\u0438\u043b\u044e \u043a\u043e\u0434\u0430<\/a><br \/>  3. <a href=\"https:\/\/habrahabr.ru\/post\/74419\/\">\u041f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 javascript \u043a\u043e\u0434\u0430<\/a><br \/>  4. <a href=\"https:\/\/habrahabr.ru\/post\/111563\/\">\u0412\u0441\u0451, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u0437\u043d\u0430\u0442\u044c \u043e \u0442\u043e\u0447\u043a\u0435 \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/a><br \/>  5. <a href=\"https:\/\/habrahabr.ru\/post\/136860\/\">\u041e\u0442\u043a\u0440\u044b\u0442\u043e\u0435 \u043f\u0438\u0441\u044c\u043c\u043e \u043b\u0438\u0434\u0435\u0440\u0430\u043c JS \u043a\u0430\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0442\u043e\u0447\u0435\u043a \u0441 \u0437\u0430\u043f\u044f\u0442\u043e\u0439<\/a><\/p>\n<h4><b><a name=\"five\"><\/a>\u0421\u0442\u0438\u043b\u044c \u043a\u043e\u0434\u0430<\/b><\/h4>\n<p>  \u041d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u043c\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u044d\u0442\u043e\u043c, \u0432\u0435\u0434\u044c \u044d\u0442\u043e \u0441\u0432\u0435\u0440\u0445\u0431\u043e\u043b\u0435\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0438 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043d\u0435 \u043f\u0440\u0438\u043d\u043e\u0441\u044f\u0449\u0438\u0439 \u0437\u0430\u043c\u0435\u0442\u043d\u043e\u0433\u043e \u0443\u0441\u043f\u0435\u0445\u0430 \u043f\u0440\u0438 \u0441\u043e\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0438 \u0442\u0430\u043a\u043e\u0439 \u0436\u0435 \u0441\u0442\u0440\u043e\u0433\u043e\u0439 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0431\u043b\u0430\u0441\u0442\u044f\u0445.<\/p>\n<p>  \u0420\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u043d\u0435\u043a\u0438\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 (\u0441\u0442\u0438\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f) (\u0430\u043d\u0433\u043b. coding convention) \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442. \u0412 \u043c\u0438\u0440\u0435 JavaScript \u0435\u0441\u0442\u044c \u0434\u0430\u0436\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u0434\u0430 \u043d\u0430 \u0441\u043e\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 \u2014 JSCS (JavaScript Code Style). \u041d\u0430\u043b\u0438\u0447\u0438\u0435 \u043e\u0431\u0449\u0435\u0433\u043e \u0441\u0442\u0438\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u043b\u0435\u0433\u0447\u0430\u0435\u0442 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u043e\u0434\u043d\u0438\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043e\u043c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u041a \u0442\u0430\u043a\u0438\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u044b, \u0442\u0430\u043a \u0438 \u043b\u0443\u0447\u0448\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0442\u0430\u043a \u0438 \u0446\u0435\u043b\u044b\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438:<br \/>  1. <a href=\"https:\/\/github.com\/airbnb\/javascript\">Airbnb<\/a><br \/>  2. <a href=\"http:\/\/javascript.crockford.com\/code.html\">\u0414\u0443\u0433\u043b\u0430\u0441 \u041a\u0440\u043e\u043a\u0444\u043e\u0440\u0434<\/a><br \/>  3. <a href=\"https:\/\/google-styleguide.googlecode.com\/svn\/trunk\/javascriptguide.xml\">Google<\/a><br \/>  4. <a href=\"http:\/\/gruntjs.com\/contributing#syntax\">Grunt<\/a><br \/>  5. <a href=\"https:\/\/github.com\/rwaldron\/idiomatic.js#idiomatic-style-manifesto\">Idiomatic<\/a><br \/>  6. <a href=\"https:\/\/contribute.jquery.org\/style-guide\/js\/\">jQuery<\/a><br \/>  7. <a href=\"https:\/\/github.com\/mrdoob\/three.js\/wiki\/Mr.doob&#39;s-Code-Style%E2%84%A2\">MDCS<\/a><br \/>  8. <a href=\"https:\/\/github.com\/felixge\/node-style-guide\">Node.js<\/a><br \/>  9. <a href=\"https:\/\/www.mediawiki.org\/wiki\/Manual:Coding_conventions\/JavaScript\">Wikimedia<\/a><br \/>  10. <a href=\"https:\/\/make.wordpress.org\/core\/handbook\/best-practices\/coding-standards\/javascript\/\">WordPress<\/a><br \/>  11. <a href=\"https:\/\/github.com\/ymaps\/codestyle\/blob\/master\/javascript.md\">\u042f\u043d\u0434\u0435\u043a\u0441<\/a><\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82_%D0%BE%D1%84%D0%BE%D1%80%D0%BC%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BA%D0%BE%D0%B4%D0%B0\">\u0421\u0442\u0438\u043b\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f<\/a><br \/>  2. <a href=\"http:\/\/jscs.info\/\">JavaScript Code Style<\/a><\/p>\n<h4><b><a name=\"six\"><\/a>\u0410\u043d\u0430\u043b\u0438\u0437 \u043a\u043e\u0434\u0430 \u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438<\/b><\/h4>\n<p>  \u0421 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u044f \u0438\u043d\u043e\u0433\u0434\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430. \u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440, \u0437\u043d\u0430\u0447\u0438\u0442 \u0432\u044b \u0442\u043e\u0447\u043d\u043e \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0432 \u0442\u043e\u043c \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u0430\u0448 \u043a\u043e\u0434, \u0438 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, JSLint (\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430). \u0418 \u0432\u0441\u0435 \u0436\u0435, \u044f \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f JSHint \u0438\u043b\u0438 ESLint. <\/p>\n<p>  \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 JSHint:  <\/p>\n<ul>\n<li>\u041e\u0431\u044a\u044f\u0432\u0438\u0442\u0435 .jshintignore \u0444\u0430\u0439\u043b \u0432 node_modules, bower_components \u0438 \u0434\u0440\u0443\u0433\u0438\u0445<\/li>\n<li>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043d\u0438\u0436\u0435 \u0432 \u0444\u0430\u0439\u043b\u0435 .jshintrc<\/li>\n<\/ul>\n<pre><code>{   &quot;curly&quot;: true,   &quot;eqeqeq&quot;: true,   &quot;newcap&quot;: true,   &quot;noarg&quot;: true,   &quot;noempty&quot;: true,   &quot;nonew&quot;: true,   &quot;sub&quot;: true,   &quot;undef&quot;: true,   &quot;unused&quot;: true,   &quot;trailing&quot;: true,   &quot;boss&quot;: true,   &quot;eqnull&quot;: true,   &quot;strict&quot;: true,   &quot;immed&quot;: true,   &quot;expr&quot;: true,   &quot;latedef&quot;: &quot;nofunc&quot;,   &quot;quotmark&quot;: &quot;single&quot;,   &quot;indent&quot;: 2,   &quot;node&quot;: true } <\/code><\/pre>\n<p>  \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0432\u044b \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u043d\u044b \u0441\u0442\u0440\u043e\u0433\u043e \u043f\u0440\u0438\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u044d\u0442\u0438\u0445 \u043f\u0440\u0430\u0432\u0438\u043b, \u043d\u043e \u0432\u0430\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0437\u043e\u043b\u043e\u0442\u0443\u044e \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0443 \u043c\u0435\u0436\u0434\u0443 \u0432\u0430\u043b\u0438\u0434\u0430\u0442\u043e\u0440\u043e\u043c \u0438 \u0438\u043d\u044b\u043c\u0438 \u0441\u0442\u0438\u043b\u044f\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/thinking.bohdanvorona.name\/jslint\/\">JSLint<\/a><br \/>  2. <a href=\"http:\/\/lugnsk.org\/lugnskru\/2012\/04\/jshint-povyishaem-kachestvo-javascript-koda.html\">JSHint<\/a><br \/>  3. <a href=\"http:\/\/alexfedoseev.com\/post\/58\/eslint-tips\">\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 ESlint<\/a><br \/>  4. <a href=\"https:\/\/www.youtube.com\/watch?v=9_Ujfx6Go7M\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 JSHint \u0432 sublime text 3<\/a><br \/>  5. <a href=\"http:\/\/forwebdev.ru\/javascript\/linting\/\">JavaScript-\u043b\u0438\u043d\u0442\u0438\u043d\u0433<\/a><\/p>\n<h4><b><a name=\"seven\"><\/a>\u0421\u0442\u0440\u043e\u043a\u0438<\/b><\/h4>\n<p>  \u0412\u0441\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0442\u0438\u043f \u043a\u0430\u0432\u044b\u0447\u0435\u043a. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043e\u0434\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0438\u043b\u0438 \u0434\u0432\u043e\u0439\u043d\u044b\u0435 \u043a\u0430\u0432\u044b\u0447\u043a\u0438 \u0432\u043e \u0432\u0441\u0435\u043c \u043a\u043e\u0434\u0435.  <\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var message = 'oh hai ' + name + &quot;!&quot;; <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var message = 'oh hai ' + name + '!'; <\/code><\/pre>\n<p>  \u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0435\u0441\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435\u0441\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0445\u043e\u0436\u0435\u0439 \u043d\u0430 <i>util.format<\/i> \u0432 Node.js. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0432\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0449\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0438, \u0430 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0447\u0438\u0449\u0435.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043b\u0443\u0447\u0448\u0435 var message = util.format('oh hai %s!', name); <\/code><\/pre>\n<p>  \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435, \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0432\u0448\u0438\u0441\u044c \u043a\u0443\u0441\u043a\u043e\u043c \u043a\u043e\u0434\u0430 \u043d\u0438\u0436\u0435.  <\/p>\n<pre><code class=\"javascript\">function format () {   var args = [].slice.call(arguments);   var initial = args.shift();    function replacer (text, replacement) {     return text.replace('%s', replacement);   }   return args.reduce(replacer, initial); } <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u0441\u0442\u0440\u043e\u043a (\u043c\u043d\u043e\u0433\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0445), \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043e\u0431 HTML \u0441\u043d\u0438\u043f\u043f\u0435\u0442\u0430\u0445, \u0438\u043d\u043e\u0433\u0434\u0430 \u043b\u0443\u0447\u0448\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u0432 \u0441\u0442\u0440\u043e\u043a\u0443. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c (\u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c) \u0441\u0442\u0440\u043e\u043a\u0438 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0435\u0433\u0447\u0435 \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u043c \u0441\u0442\u0438\u043b\u0435 \u0438, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u043d\u043e \u0438\u043d\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u0442\u0440\u0443\u0434\u043d\u0435\u0435 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c.   <\/p>\n<pre><code class=\"javascript\">var html = [   '&lt;div&gt;',     format('&lt;span class=&quot;monster&quot;&gt;%s&lt;\/span&gt;', name),   '&lt;\/div&gt;' ].join(''); <\/code><\/pre>\n<p>  \u0412 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u043c\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0432\u043e\u0438 \u0441\u043d\u0438\u043f\u043f\u0435\u0442\u044b \u0438 \u0432 \u043a\u043e\u043d\u0446\u0435 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c \u0438\u0445 \u0434\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u0447\u0442\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430. \u0418\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0438\u0437\u0430\u0442\u043e\u0440\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Jade.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/String\">\u0421\u0442\u0440\u043e\u043a\u0438<\/a><br \/>  2. <a href=\"http:\/\/www.quirksmode.org\/js\/strings.html\">\u0420\u0430\u0431\u043e\u0442\u0430 \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438<\/a><br \/>  3. <a href=\"http:\/\/www.sitepoint.com\/javascript-fast-string-concatenation\/\">\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0430\u0446\u0438\u0438 \u0441\u0442\u0440\u043e\u043a<\/a><br \/>  4. <a href=\"https:\/\/developer.mozilla.org\/ru\/Add-ons\/Code_snippets\/StringView\">C-\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0442\u0438\u043f\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432<\/a><\/p>\n<h4><b><a name=\"eight\"><\/a>\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445<\/b><\/h4>\n<p>  \u0412\u0441\u0435\u0433\u0434\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0439\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043f\u043e \u0441\u043c\u044b\u0441\u043b\u0443 \u0438 \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0435, \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u044f \u0438\u0445 \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438. \u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442\u0441\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043f\u043e \u043e\u0434\u0438\u043d\u043e\u0447\u043a\u0435. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 <i>var<\/i>, \u0430 \u0437\u0430\u0442\u0435\u043c \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u043f\u044f\u0442\u0443\u044e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043e\u0434\u043d\u0430\u043a\u043e \u0431\u0443\u0434\u044c\u0442\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b \u0432 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430\u0445 \u0446\u0435\u043b\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.  <\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var foo = 1,     bar = 2;  var baz; var pony;  var a   , b; <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var foo = 1;  if (foo &gt; 1) {   var bar = 2; } <\/code><\/pre>\n<p>  \u0412\u043e \u0432\u0441\u044f\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0432\u044b \u0442\u043e\u0447\u043d\u043e \u0432\u0438\u0434\u0438\u0442\u0435, \u0433\u0434\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f  <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var foo = 1; var bar = 2;  var baz; var pony;  var a; var b; <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var foo = 1; var bar;  if (foo &gt; 1) {   bar = 2; } <\/code><\/pre>\n<p>  \u041e\u0431\u044a\u044f\u0432\u043b\u044f\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u043f\u044f\u0442\u0443\u044e.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u0440\u0438\u0435\u043c\u043b\u0435\u043c\u043e var a = 'a'; var b = 2; var i, j; <\/code><\/pre>\n<h4><b><a name=\"night\"><\/a>\u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438<\/b><\/h4>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438. \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u044d\u0442\u043e \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u043c \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0431\u0430\u0433\u0430 \u0443 \u043f\u0440\u043e\u0434\u0443\u043a\u0446\u0438\u0438 Apple \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f SSL\/TLS.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e if (err) throw err; <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e if (err) { throw err; } <\/code><\/pre>\n<p>  \u0420\u0430\u0434\u0438 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f, \u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0431\u043b\u043e\u043a\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u043d\u0435 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435  <\/p>\n<pre><code class=\"javascript\">\/\/ \u043b\u0443\u0447\u0448\u0435 if (err) {   throw err; } <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/www.imperialviolet.org\/2014\/02\/22\/applebug.html\">Apple&#8217;s SSL\/TLS bug<\/a><br \/>  2. <a href=\"https:\/\/tjournal.ru\/p\/apple-nsa-ssl\">\u0412\u043e\u0442 \u044d\u0442\u043e fail<\/a><\/p>\n<h4><b><a name=\"ten\"><\/a>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f<\/b><\/h4>\n<p>  \u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432 == \u0438 !=, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0431\u043e\u043b\u0435\u0435 \u0431\u043b\u0430\u0433\u043e\u043f\u0440\u0438\u044f\u0442\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f === \u0438! ==. \u042d\u0442\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0436\u0435\u0441\u0442\u043a\u0438\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u0438\u0445 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u044b (== \u0438 !=) \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0438 \u0442\u043e\u043c\u0443 \u0436\u0435 \u0442\u0438\u043f\u0443 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function isEmptyString (text) {   return text == ''; }  isEmptyString(0); \/\/ &lt;- true <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function isEmptyString (text) {   return text === ''; }  isEmptyString(0); \/\/ &lt;- false <\/code><\/pre>\n<h4><b><a name=\"eleven\"><\/a>\u0422\u0435\u0440\u043d\u0430\u0440\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440<\/b><\/h4>\n<p>  \u0422\u0435\u0440\u043d\u0430\u0440\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u043e\u0442\u0447\u0435\u0442\u043b\u0438\u0432\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u043c\u043d\u043e\u0433\u043e\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u0442\u043d\u044b\u0445. \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0435\u0441\u043b\u0438 \u0432\u0430\u0448 \u043d\u0430\u043c\u0435\u0442\u0430\u043d\u043d\u044b\u0439 \u0433\u043b\u0430\u0437 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0432 \u0442\u0435\u0440\u043d\u0430\u0440\u043d\u043e\u043c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0435 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0431\u044b\u0441\u0442\u0440\u043e, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0448 \u043c\u043e\u0437\u0433 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442 \u0438 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e, \u0440\u0430\u0434\u0438 \u0432\u0430\u0448\u0435\u0433\u043e \u0431\u043b\u0430\u0433\u0430, \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0435\u0440\u043d\u0430\u0440\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440.<\/p>\n<p>  jQuery \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u044f\u0440\u043a\u0438\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u043e\u043b\u043d\u0435\u043d <a href=\"https:\/\/github.com\/jquery\/jquery\/blob\/c869a1ef8a031342e817a2c063179a787ff57239\/src\/ajax.js#L117\">\u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u044b\u043c\u0438 \u0442\u0440\u0435\u0445\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043d\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u043c\u0438<\/a>.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function calculate (a, b) {   return a && b ? 11 : a ? 10 : b ? 1 : 0; } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function getName (mobile) {   return mobile ? mobile.name : 'Generic Player'; } <\/code><\/pre>\n<p>  \u0412 \u0441\u043b\u0443\u0447\u0430\u044f\u0445, \u043a\u043e\u0433\u0434\u0430 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <i>if <\/i>\u0438 <i>else<\/i>.<\/p>\n<h4><b><a name=\"twelve\"><\/a>\u0424\u0443\u043d\u043a\u0446\u0438\u0438<\/b><\/h4>\n<p>  \u041f\u0440\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <a href=\"http:\/\/stackoverflow.com\/questions\/336859\/var-functionname-function-vs-function-functionname\">\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0443\u044e \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u044e<\/a> \u0432\u043c\u0435\u0441\u0442\u043e <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/JavaScript\/Reference\/Operators\/function#Examples\">\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439<\/a>. \u0412\u0441\u0435 \u044d\u0442\u043e \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 <a href=\"https:\/\/github.com\/buildfirst\/buildfirst\/tree\/master\/ch05\/04_hoisting\">\u00ab\u043f\u043e\u0434\u043d\u044f\u0442\u0438\u0435\u00bb \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445<\/a> \u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var sum = function (x, y) {   return x + y; }; <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function sum (x, y) {   return x + y; } <\/code><\/pre>\n<p>  \u041d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u043f\u043b\u043e\u0445\u043e\u0433\u043e \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445, \u0435\u0441\u043b\u0438 \u0432\u044b \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 \u043f\u0440\u0438 <a href=\"http:\/\/ejohn.org\/blog\/partial-functions-in-javascript\/\">\u043a\u0430\u0440\u0440\u0438\u043d\u0433\u0435.<\/a> <\/p>\n<p>  \u0418\u043c\u0435\u0439\u0442\u0435 \u0432 \u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0438 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432\u044b\u0448\u0435, \u0442\u0430\u043a \u0447\u0442\u043e \u0432\u0441\u0435 \u044d\u0442\u043e \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0432 \u043a\u0430\u043a\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0431\u044b\u043b\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0430 \u044d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f. \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0432\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u0442\u0430\u0440\u0430\u0442\u044c\u0441\u044f \u0438\u0437\u0431\u0435\u0433\u0430\u0442\u044c \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432\u043d\u0443\u0442\u0440\u0438 \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e if (Math.random() &gt; 0.5) {   sum(1, 3);    function sum (x, y) {     return x + y;   } } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e if (Math.random() &gt; 0.5) {   sum(1, 3); }  function sum (x, y) {   return x + y; } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function sum (x, y) {   return x + y; }  if (Math.random() &gt; 0.5) {   sum(1, 3); } <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u043f\u0443\u0441\u0442\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 (<a href=\"http:\/\/stackoverflow.com\/questions\/21634886\/what-is-the-javascript-convention-for-no-operation\">no-op<\/a>) \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0431\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430 <i>Function.prototype<\/i> \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <i>function noop () {}<\/i>. \u0422\u0430\u043a\u0436\u0435, \u0432 \u0438\u0434\u0435\u0430\u043b\u0435, \u0443 \u0432\u0430\u0441 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0434\u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u0432\u0441\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0434\u043d\u043e\u0442\u0438\u043f\u043d\u044b\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043a\u043e\u0434\u0430, \u0432\u0430\u0448 \u043c\u0435\u0442\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var divs = document.querySelectorAll('div');  for (i = 0; i &lt; divs.length; i++) {   console.log(divs[i].innerHTML); } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var divs = document.querySelectorAll('div');  [].slice.call(divs).forEach(function (div) {   console.log(div.innerHTML); }); <\/code><\/pre>\n<p>  \u041f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 .call() \u0438\u0437 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 Function.prototype, \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u043f\u0438\u0441\u044c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0430 \u0434\u043e [].slice.call(arguments) \u0432\u043c\u0435\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Array.prototype.slice.call(). \u0412 \u043b\u044e\u0431\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0430 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 bind().<\/p>\n<p>  \u0422\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435, \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u043c\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 <a href=\"https:\/\/github.com\/petkaantonov\/bluebird\/wiki\/Optimization-killers#3-managing-arguments\">\u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0434\u0432\u0438\u0436\u043a\u0435 V8<\/a> \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var args = [].slice.call(arguments); <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var i; var args = new Array(arguments.length); for (i = 0; i &lt; args.length; i++) {     args[i] = arguments[i]; } <\/code><\/pre>\n<p>  \u041d\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0439\u0442\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0446\u0438\u043a\u043b\u043e\u0432<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var values = [1, 2, 3]; var i;  for (i = 0; i &lt; values.length; i++) {   setTimeout(function () {     console.log(values[i]);   }, 1000 * i); } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e var values = [1, 2, 3]; var i;  for (i = 0; i &lt; values.length; i++) {   setTimeout(function (i) {     return function () {       console.log(values[i]);     };   }(i), 1000 * i); } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var values = [1, 2, 3]; var i;  for (i = 0; i &lt; values.length; i++) {   setTimeout(function (i) {     console.log(values[i]);   }, 1000 * i, i); } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var values = [1, 2, 3]; var i;  for (i = 0; i &lt; values.length; i++) {   wait(i); }  function wait (i) {   setTimeout(function () {     console.log(values[i]);   }, 1000 * i); } <\/code><\/pre>\n<p>  \u0418\u043b\u0438 \u0435\u0449\u0435 \u043b\u0443\u0447\u0448\u0435, \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <i>.forEach<\/i>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0446\u0438\u043a\u043b\u0435.  <\/p>\n<pre><code class=\"javascript\">\/\/ \u043b\u0443\u0447\u0448\u0435 [1, 2, 3].forEach(function (value, i) {   setTimeout(function () {     console.log(value);   }, 1000 * i); }); <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u0442\u0435\u043a\u0430 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0431\u044b\u043b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0449\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u0440\u0438\u0432\u044b\u043a\u043b\u0438 \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0442\u044c \u0432\u0441\u0435 \u0432\u0430\u0448\u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0438\u043c \u0438\u043c\u0435\u043d\u0430. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u043f\u0440\u0438\u0447\u0438\u043d\u0443 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0435 \u0442\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u0441\u0442\u0435\u043a\u0430.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function once (fn) {   var ran = false;   return function () {     if (ran) { return };     ran = true;     fn.apply(this, arguments);   }; } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function once (fn) {   var ran = false;   return function run () {     if (ran) { return };     ran = true;     fn.apply(this, arguments);   }; } <\/code><\/pre>\n<p>  \u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0438\u043d\u043e\u0433\u0434\u0430 \u043b\u0443\u0447\u0448\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0443\u0441\u0442\u043e\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0432\u0430\u0448 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u0435\u0435.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function foo (car, black, turbine) {  if (car) {   if (black) {     if (turbine) {       return 'batman!';     }   }  } } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function fn (condition) {  if (condition) {   \/\/ 10+ \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430  } } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function foo (car, black, turbine) {  if (!car) {   return;  }   if (!black) {   return;  }   if (!turbine) {   return;  }   return 'batman!'; } <\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u043b\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u0443\u0441\u0442\u043e\u0439 return, \u0442\u043e \u043e\u043d\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <i>undefined<\/i>. <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function fn (condition) {  if (!condition) {   return;  }   \/\/ 10+ \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u0434\u0430 } <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/habrahabr.ru\/post\/127482\/\">\u041e\u0431\u043b\u0430\u0441\u0442\u044c \u0432\u0438\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 JavaScript \u0438 \u00ab\u043f\u043e\u0434\u043d\u044f\u0442\u0438\u0435\u00bb \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0439<\/a><br \/>  2. <a href=\"https:\/\/learn.javascript.ru\/bind#\u043a\u0430\u0440\u0440\u0438\u043d\u0433\">\u041a\u0430\u0440\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/a><br \/>  3. <a href=\"http:\/\/jquery.page2page.ru\/index.php5\/%D0%9F%D1%83%D1%81%D1%82%D0%B0%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0443\u0441\u0442\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 jQuery<\/a><br \/>  4. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/slice#Array-like\">\u041c\u0430\u0441\u0441\u0438\u0432\u043e\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b<\/a><br \/>  5. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Error\/Stack\">\u0422\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u0441\u0442\u0435\u043a\u0430<\/a><br \/>  6. <a href=\"http:\/\/www.internet-technologies.ru\/articles\/article_1909.html\">\u0421\u043e\u0432\u0435\u0442\u044b \u043f\u043e \u043e\u0442\u043b\u0430\u0434\u043a\u0435 JavaScript \u0432 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0445 \u0441\u0442\u0435\u043a\u0430\u0445 \u0432\u044b\u0437\u043e\u0432\u043e\u0432<\/a><br \/>  7. <a href=\"http:\/\/vanilla-js.blogspot.ru\/2013\/06\/javascript-return-undefined.html\">JavaScript return \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 undefined<\/a><\/p>\n<h4><b><a name=\"thirteen\"><\/a>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0438 \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f<\/b><\/h4>\n<p>  \u041b\u044e\u0431\u043e\u0439 \u0446\u0435\u043d\u043e\u0439 \u0438\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u0432. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440) \u044f\u0437\u044b\u043a\u0430, \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 <a href=\"https:\/\/github.com\/bevacqua\/poser\">poser<\/a> \u0438\u043b\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0439\u0442\u0435 \u0441\u0432\u043e\u044e \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  \u041a \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c \u0442\u0438\u043f\u0430\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f:  <\/p>\n<ul>\n<li>String<\/li>\n<li>Number<\/li>\n<li>Boolean<\/li>\n<\/ul>\n<p>  \u041a \u0441\u043e\u0441\u0442\u0430\u0432\u043d\u044b\u043c \u0442\u0438\u043f\u0430\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f:  <\/p>\n<ul>\n<li>Object<\/li>\n<li>Function<\/li>\n<li>Array<\/li>\n<\/ul>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e String.prototype.half = function () {   return this.substr(0, this.length \/ 2); }; <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function half (text) {   return text.substr(0, text.length \/ 2); } <\/code><\/pre>\n<p>  \u0418\u0437\u0431\u0435\u0433\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f, \u0432\u0435\u0434\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0441\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438. \u041e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0447\u0430\u0441\u0442\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0440\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript \u043a\u0430\u043a \u0440\u0430\u0437 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u0432. \u042d\u0442\u0430 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f, \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u0430\u044f monkey patching, \u043e\u043d\u0430 \u043d\u0430\u0440\u0443\u0448\u0430\u0435\u0442 \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0438\u043d\u043a\u0430\u043f\u0441\u0443\u043b\u044f\u0446\u0438\u0438. \u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043e\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0448\u0438\u0440\u043e\u043a\u043e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0445 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430\u0445, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a Prototype.js, \u043d\u0430 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u0445 \u043f\u0440\u0438\u0447\u0438\u043d \u0434\u043b\u044f \u0435\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u00ab\u0437\u0430\u0445\u043b\u0430\u043c\u043b\u044f\u044e\u0442\u0441\u044f\u00bb \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e. \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u0438\u0435\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a Array.forEach, \u0434\u043b\u044f \u043d\u0435\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0438\u0445 \u0441\u0442\u0430\u0440\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u044f\u0437\u044b\u043a\u0430.<\/p>\n<ul>\n<li>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043d\u043e\u0435 \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0430\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447\u0435\u0432\u043e\u0435 \u0441\u043b\u043e\u0432\u043e this \u0432\u0441\u0435\u0433\u0434\u0430<\/li>\n<li>\u0422\u0443\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u0438, \u0447\u0435\u043c \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432<\/li>\n<li>\u042d\u0442\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u0439 \u0431\u043e\u043b\u0438 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432<\/li>\n<li>\u0421\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b<\/li>\n<\/ul>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Data_structures\">\u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 JavaScript \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445<\/a><br \/>  2. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Operators\/typeof\">\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0434\u0430\u043d\u043d\u044b\u0445<\/a><br \/>  3. <a href=\"http:\/\/ruseller.com\/lessons.php?rub=28&amp;id=1445\">\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f?<\/a><br \/>  4. <a href=\"https:\/\/www.youtube.com\/watch?v=UAPCNRjskaU\">\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043d\u043e-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 <\/a><br \/>  5. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Inheritance_and_the_prototype_chain\">\u041d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u0432<\/a><br \/>  6. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Operators\/this\">\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 this<\/a> \u0438 <a href=\"https:\/\/habrahabr.ru\/post\/149516\/\">\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435<\/a><\/p>\n<h4><b><a name=\"fourteen\"><\/a>\u041e\u0431\u044a\u0435\u043a\u0442\u044b<\/b><\/h4>\n<p>  \u0414\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438 <i><b>{ }<\/b><\/i>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u043e\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <a href=\"http:\/\/javascript.info\/tutorial\/factory-constructor-pattern\">\u043f\u043e\u0434\u0445\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0444\u0430\u0431\u0440\u0438\u043a\u0438<\/a> \u0432\u043c\u0435\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u0430.<\/p>\n<p>  \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430:  <\/p>\n<pre><code class=\"javascript\">var World = {}; \/\/ \u043f\u0443\u0441\u0442\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442, \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u0430 \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0445 \u0441\u043a\u043e\u0431\u043e\u043a  console.log(World); \/\/ Object {} <\/code><\/pre>\n<pre><code class=\"javascript\">var World = {   people: &quot;~ 7 \u043c\u043b\u0440\u0434.&quot;,   country: &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot; };  console.log(World); \/\/ Object {people: &quot;~ 7 \u043c\u043b\u0440\u0434.&quot;, country: &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot;} <\/code><\/pre>\n<p>  \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430 (\u043f\u043e\u0434\u0445\u043e\u0434 \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430):  <\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e \/\/ \u0432\u0441\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f - \u044d\u0442\u043e \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043f\u0443\u0441\u0442\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 var TemplateWorld = function(_people, _country) {   \/\/ \u0432 \u043e\u0431\u0449\u0435\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u043a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 this \u0432\u043d\u0443\u0442\u0440\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0435 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b   \/\/ TemplateWorld \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u043c   this.people = _people;   this.country = _country; } \/\/ \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 (\u0438 \u0432 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f)  var World = new TemplateWorld(&quot;~ 7 \u043c\u043b\u0440\u0434.&quot;, &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot;);  console.log(World); \/\/ TemplateWorld {people: &quot;~ 7 \u043c\u043b\u0440\u0434.&quot;, country: &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot;} <\/code><\/pre>\n<p>  \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430 (\u043f\u043e\u0434\u0445\u043e\u0434 \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0444\u0430\u0431\u0440\u0438\u043a):  <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var TemplateWorld = function(_people, _country) {   return {     people: _people,     country: _country   }; }  var World = TemplateWorld(&quot;~ 7 \u043c\u043b\u0440\u0434.&quot;, &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot;);  console.log(World); \/\/ Object {people: &quot;~ 7 \u043c\u043b\u0440\u0434.&quot;, country: &quot;~ 258 \u0441\u0442\u0440\u0430\u043d&quot;} <\/code><\/pre>\n<p>  \u041d\u0430\u0433\u043b\u044f\u0434\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430:  <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function util (options) {   \/\/ \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430   var foo;    function add () {     return foo++;   }    function reset () { \/\/ \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u043d\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u043c     foo = options.start || 0;   }    reset();    return {     \/\/ \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430     uuid: add   }; } <\/code><\/pre>\n<h6><b>\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e<\/b><\/h6>\n<p>  \u0411\u043e\u043b\u0435\u0435 \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e \u0438 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e, \u043a\u0430\u043a \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u043c\u0435\u0436\u0434\u0443 \u044f\u0447\u0435\u0439\u043a\u0430\u043c\u0438 \u043f\u0430\u043c\u044f\u0442\u0438 \u0432\u0438\u0434\u043d\u043e \u0432 \u0421\/\u0421++. \u041d\u043e \u0432 JavaScript, \u043e\u0447\u0435\u043d\u044c \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043f\u0440\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u0442\u043e\u0433\u0434\u0430 \u043e\u0442\u043f\u0430\u0434\u0443\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0441\u0440\u0430\u0437\u0443.<\/p>\n<p>  \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435  <\/p>\n<pre><code class=\"javascript\">\/\/ \u044d\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \/\/ \u043e\u0434\u0438\u043d \u043a\u0443\u0441\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u0434\u0440\u0443\u0433\u0443\u044e \u044f\u0447\u0435\u0439\u043a\u0443 \u043f\u0430\u043c\u044f\u0442\u0438  var a = 'text'; var b = a; \/\/ \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e  a = 'update';   console.log(a); \/\/ update console.log(b); \/\/ text <\/code><\/pre>\n<p>  \u041e\u0431\u044a\u0435\u043a\u0442\u044b  <\/p>\n<pre><code class=\"javascript\">\/\/ \u044d\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \/\/ \u0432 JavaScript \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442c\u044f \u043d\u0435\u044f\u0432\u043d\u043e  var a = {foo: 'bar'}; var b = a; \/\/ \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \/\/ b - \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 a  a.foo = 'foo';  console.log(a); \/\/ Object {foo: 'foo'} console.log(b); \/\/ Object {foo: 'foo'}  b.foo = 'bar';  console.log(a); \/\/ Object {foo: 'bar'} console.log(b); \/\/ Object {foo: 'bar'} <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/learn.javascript.ru\/object-reference\">\u041e\u0431\u044a\u0435\u043a\u0442\u044b: \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435<\/a><\/p>\n<h4><b><a name=\"fifteen\"><\/a>\u041c\u0430\u0441\u0441\u0438\u0432\u044b<\/b><\/h4>\n<p>  \u0414\u043b\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438 <i><b>[ ]<\/b><\/i>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0430. \u0414\u043b\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 <i><b>new Array(<\/b>length<b>)<\/b><\/i> \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u0435\u0433\u043e \u0434\u043b\u0438\u043d\u044b (\u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430).<\/p>\n<p>  \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u043d\u0430\u0442\u044c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b. \u0412\u0441\u0435 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0435\u0431\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c. <\/p>\n<p>  \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b:  <\/p>\n<ul>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/forEach\">.forEach<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/slice\">.slice<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/splice\">.splice<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/join\">.join<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/concat\">.concat<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/unshift\">.unshift<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/shift\">.shift<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/push\">.push<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/pop\">.pop<\/a><\/li>\n<\/ul>\n<p>  \u0411\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b:  <\/p>\n<ul>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/filter\">.filter<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/map\">.map<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/reduce\">.reduce<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/reduceRight\">.reduceRight<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/some\">.some<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/every\">.every<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/sort\">.sort<\/a><\/li>\n<li><a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\/reverse\">.reverse<\/a><\/li>\n<\/ul>\n<h6><b>\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435<\/b><\/h6>\n<p>  <\/p>\n<pre><code class=\"javascript\">\/\/ \u041c\u0430\u0441\u0441\u0438\u0432 - \u044d\u0442\u043e \u0442\u043e\u0442 \u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442  var a = [1, 2, 3]; var b = a; \/\/ \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \/\/ b - \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 a  a[2] = 4;  console.log(a); \/\/ [1, 2, 4] console.log(b); \/\/ [1, 2, 4]  b[2] = 3;  console.log(a); \/\/ [1, 2, 3] console.log(b); \/\/ [1, 2, 3] <\/code><\/pre>\n<h6><b>\u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c \u043a \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u044b \u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u043c\u0438<\/b><\/h6>\n<p>  <\/p>\n<ul>\n<li>\u041f\u0435\u0440\u0435\u0431\u043e\u0440 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .forEach<\/li>\n<li>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .some \u0438 .every<\/li>\n<li>\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .join \u0438 .concat<\/li>\n<li>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441\u043e \u0441\u0442\u0435\u043a\u043e\u043c \u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u044c\u044e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .pop, .push, .shift, \u0438 .unshift<\/li>\n<li>\u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0439 \u043c\u0435\u0442\u043e\u0434 (mapping) .map<\/li>\n<li>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 .filter<\/li>\n<li>\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .sort<\/li>\n<li>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 .reduce, .reduceRight<\/li>\n<li>\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .slice<\/li>\n<li>\u0411\u043e\u043b\u0435\u0435 \u043c\u043e\u0449\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e, \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 .splice<\/li>\n<li>\u041f\u043e\u0438\u0441\u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 .indexOf<\/li>\n<li>\u0412 \u043f\u043e\u043c\u043e\u0449\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 in<\/li>\n<li>\u041f\u0435\u0440\u0435\u0431\u043e\u0440 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0440\u043e\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e .reverse<\/li>\n<\/ul>\n<p>  <img decoding=\"async\" src=\"https:\/\/i.imgur.com\/z0Hun2i.png\" alt=\"image\"\/><\/p>\n<h6><b>\u041f\u0435\u0440\u0435\u0431\u043e\u0440 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .forEach<\/b><\/h6>\n<p>  \u042d\u0442\u043e \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0432 JavaScript. \u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 IE7 \u0438 IE8.<br \/>  \u041f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430 (\u0441allback), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430:  <\/p>\n<ul>\n<li>value \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/li>\n<li>index \u2014 \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435<\/li>\n<li>array \u2014 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432<\/li>\n<\/ul>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0432\u0442\u043e\u0440\u043e\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 (\u043e\u0431\u044a\u0435\u043a\u0442, \u043c\u0430\u0441\u0441\u0438\u0432, \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e, \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e), \u044d\u0442\u043e\u0442 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432 callback-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 (this).<\/p>\n<pre><code class=\"javascript\">['_', 't', 'a', 'n', 'i', 'f', ']'].forEach(function (value, index, array) {   this.push(String.fromCharCode(value.charCodeAt() + index + 2)) }, out = [])  out.join('') \/\/ &lt;- 'awesome' <\/code><\/pre>\n<p>  \u041c\u044b \u0441\u0445\u0438\u0442\u0440\u0438\u043b\u0438, .join \u043c\u044b \u0435\u0449\u0435 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438, \u043d\u043e \u0441\u043a\u043e\u0440\u043e \u0434\u043e\u0439\u0434\u0435\u043c \u0434\u043e \u044d\u0442\u043e\u0433\u043e. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043e\u043d \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0447\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e <i>out[0] + &#187; + out[1] + &#187; + out[2] + &#187; + out[n]<\/i>. \u041a\u0441\u0442\u0430\u0442\u0438, \u043c\u044b \u043d\u0435 \u043c\u043e\u0436\u0435\u043c \u0440\u0430\u0437\u043e\u0440\u0432\u0430\u0442\u044c foreach-\u0446\u0438\u043a\u043b, \u043a\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043f\u0435\u0440\u0435\u0431\u043e\u0440\u0430\u0445 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <i>break<\/i>. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b.<\/p>\n<h6><b>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .some \u0438 .every<\/b><\/h6>\n<p>  \u042d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043a assert-\u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c. \u0415\u0441\u043b\u0438 \u0432\u044b \u043a\u043e\u0433\u0434\u0430 -\u043b\u0438\u0431\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0441 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u0432 .NET, \u0442\u043e \u043f\u043e\u0439\u043c\u0435\u0442\u0435, \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u043e\u0445\u043e\u0436\u0438 \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 \u043a\u0443\u0437\u0435\u043d\u043e\u0432 .Any(x =&gt; x.IsAwesome) \u0438 .All(x =&gt; x.IsAwesome).<\/p>\n<p>  \u042d\u0442\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b .forEach \u0442\u0435\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 callback-\u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0441 \u0442\u0430\u043a\u0438\u043c\u0438 \u0436\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438, \u043d\u043e \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0441\u0432\u043e\u0435\u0439 \u043f\u0440\u0438\u0440\u043e\u0434\u0435.<\/p>\n<p>  \u041c\u0435\u0442\u043e\u0434 some() \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e callback \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u0442 \u0442\u0430\u043a\u043e\u0439, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e callback \u0432\u0435\u0440\u043d\u0435\u0442 \u0438\u0441\u0442\u0438\u043d\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 (\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0449\u0435\u0435\u0441\u044f \u0440\u0430\u0432\u043d\u044b\u043c true \u043f\u0440\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u0435\u0433\u043e \u043a \u0442\u0438\u043f\u0443 Boolean). \u0415\u0441\u043b\u0438 \u0442\u0430\u043a\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043d\u0430\u0439\u0434\u0435\u043d, \u043c\u0435\u0442\u043e\u0434 some() \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u0435\u0440\u043d\u0451\u0442 true. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 callback \u0432\u0435\u0440\u043d\u0451\u0442 false \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u043c\u0435\u0442\u043e\u0434 some() \u0432\u0435\u0440\u043d\u0451\u0442 false. \u0424\u0443\u043d\u043a\u0446\u0438\u044f callback \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f; \u043e\u043d\u0430 \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0438\u043b\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u043b\u0438\u0441\u044c.<\/p>\n<pre><code class=\"javascript\">max = -Infinity satisfied = [10, 12, 10, 8, 5, 23].some(function (value, index, array) {   if (value &gt; max) max = value   return value &lt; 10 })  console.log(max) \/\/ &lt;- 12  satisfied \/\/ &lt;- true <\/code><\/pre>\n<p>  \u041c\u0435\u0442\u043e\u0434 .every() \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043d\u043e \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u0430\u0448\u0430 callback-\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043b\u043e\u0436\u044c, \u0430 \u043d\u0435 \u043f\u0440\u0430\u0432\u0434\u0443.<\/p>\n<h6><b>\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .join \u0438 .concat<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 .join \u0447\u0430\u0441\u0442\u043e \u043f\u0443\u0442\u0430\u044e\u0442 \u0441 \u043c\u0435\u0442\u043e\u0434\u043e\u043c .concat, \u043a\u0430\u043a \u0432\u044b \u0437\u043d\u0430\u0435\u0442\u0435, \u043c\u0435\u0442\u043e\u0434 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0435 .join(separator), \u043e\u043d \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0447\u0435\u0433\u043e \u043e\u043d \u0431\u0435\u0440\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u0438\u0445 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0435\u043c \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435. \u0415\u0441\u043b\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e separator = &#8216;, &#8216;. \u041c\u0435\u0442\u043e\u0434 concat() \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0431\u044b\u043b \u0432\u044b\u0437\u0432\u0430\u043d, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0438\/\u0438\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432.<\/p>\n<ul>\n<li>.concat \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e \u0442\u0430\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443: array.concat(val, val2, val3, valn)<\/li>\n<li>.concat \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432<\/li>\n<li>array.concat() \u0431\u0435\u0437 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0435\u043f\u043e\u043b\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/li>\n<\/ul>\n<p>  \u041d\u0435\u043f\u043e\u043b\u043d\u0430\u044f \u043a\u043e\u043f\u0438\u044f \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043a\u043e\u043f\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0442\u0435 \u0436\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b, \u0447\u0442\u043e \u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432.<br \/>  \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0438 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u0441\u044b\u043b\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442. <br \/>  \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u043e\u0431\u044a\u0435\u043a\u0442 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u0431\u0443\u0434\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u0451\u043d, \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0432\u0438\u0434\u043d\u044b \u0438 \u0432 \u043d\u043e\u0432\u043e\u043c, \u0438 \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u0445.<\/p>\n<pre><code class=\"javascript\">var a = { foo: 'bar' } var b = [1, 2, 3, a] var c = b.concat()  console.log(b === c) \/\/ &lt;- false  a.foo = 'foo'; console.log(b); \/\/ [1, 2, 3, Object {foo: 'foo'}] console.log(c); \/\/ [1, 2, 3, Object {foo: 'foo'}]  b[3] === a && c[3] === a \/\/ &lt;- true <\/code><\/pre>\n<h6><b>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441\u043e \u0441\u0442\u0435\u043a\u043e\u043c \u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u044c\u044e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .pop, .push, .shift, \u0438 .unshift<\/b><\/h6>\n<p>  \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f, \u0432\u0441\u0435 \u0437\u043d\u0430\u044e\u0442, \u0447\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043a\u043e\u043d\u0435\u0446 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e .push. \u0410 \u043c\u043e\u0436\u0435\u0442\u0435 \u043b\u0438 \u0432\u044b \u0441\u0440\u0430\u0437\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0442\u0430\u043a\u0443\u044e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e [].push(&#8216;a&#8217;, &#8216;b&#8217;, &#8216;c&#8217;, &#8216;d&#8217;, &#8216;z&#8217;)?<\/p>\n<pre><code class=\"javascript\">var a = [].push('a', 'b', 'c', 'd', 'z'); console.log(a); \/\/ 5 <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"javascript\">var a = []; a.push('a', 'b', 'c', 'd', 'z'); console.log(a); \/\/ ['a', 'b', 'c', 'd', 'z'] <\/code><\/pre>\n<p>  \u041c\u0435\u0442\u043e\u0434 pop() \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u0415\u0441\u043b\u0438 \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u0443\u0441\u0442, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f undefined (void 0).<\/p>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f .push \u0438 .pop \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u0432\u043e\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 LIFO \u0441\u0442\u0435\u043a\u0430.<\/p>\n<pre><code class=\"javascript\">function Stack () {   this._stack = [] }  Stack.prototype.next = function () {   return this._stack.pop() }  Stack.prototype.add = function () {   return this._stack.push.apply(this._stack, arguments) }  stack = new Stack() stack.add(1, 2, 3)  stack.next() \/\/ &lt;- 3  stack.next() \/\/ &lt;- 2  stack.next() \/\/ &lt;- 1  stack.next() \/\/ &lt;- undefined <\/code><\/pre>\n<p>  \u041d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c FIFO \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f .unshift \u0438 .shift.<\/p>\n<pre><code class=\"javascript\">function Queue () {   this._queue = [] }  Queue.prototype.next = function () {   return this._queue.shift() }  Queue.prototype.add = function () {   return this._queue.unshift.apply(this._queue, arguments) }  queue = new Queue() queue.add(1,2,3)  queue.next() \/\/ &lt;- 1  queue.next() \/\/ &lt;- 2  queue.next() \/\/ &lt;- 3  queue.next() \/\/ &lt;- undefined <\/code><\/pre>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 .shift (\u0438\u043b\u0438 .pop ) \u0432 \u0446\u0438\u043a\u043b\u0435 \u0434\u043b\u044f \u043d\u0430\u0431\u043e\u0440\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u044b.<\/p>\n<pre><code class=\"javascript\">list = [1,2,3,4,5,6,7,8,9,10]  while (item = list.shift()) {   console.log(item) }  list \/\/ &lt;- [] <\/code><\/pre>\n<h6><b>\u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0439 \u043c\u0435\u0442\u043e\u0434 (mapping) .map<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 map() \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c \u0432\u044b\u0437\u043e\u0432\u0430 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0430.<\/p>\n<p>  \u041c\u0435\u0442\u043e\u0434 map \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e callback \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0438\u0445 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u0443\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0435\u0451 \u0432\u044b\u0437\u043e\u0432\u0430. \u0424\u0443\u043d\u043a\u0446\u0438\u044f callback \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0432\u043a\u043b\u044e\u0447\u0430\u044f undefined. \u041e\u043d\u0430 \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u0442\u043e \u0435\u0441\u0442\u044c \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0431\u044b\u043b\u0438 \u0437\u0430\u0434\u0430\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0438\u043b\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435).<\/p>\n<p>  \u041c\u0435\u0442\u043e\u0434 Array.prototype.map \u0438\u043c\u0435\u0435\u0442 \u0442\u0443 \u0436\u0435 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0443, \u0447\u0442\u043e \u0438 \u0443 .forEach, .some, .every:<br \/>  .map(fn(value, index, array), thisArgument).<\/p>\n<pre><code class=\"javascript\">values = [void 0, null, false, ''] values[7] = 'text' result = values.map(function(value, index, array){     console.log(value)     return value })  \/\/ &lt;- [undefined, null, false, '', undefined \u00d7 3, undefined]  console.log(result[7]); \/\/ text <\/code><\/pre>\n<p>  undefined \u00d7 3 \u2014 \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u044e\u0442 \u0442\u0435\u043c, \u0447\u0442\u043e \u043c\u0435\u0442\u043e\u0434 .map \u043d\u0435 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u043d\u0435\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u043d\u043e \u043e\u043d\u0438 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432. \u041c\u0435\u0442\u043e\u0434 .map \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0442\u0440\u0430\u043d\u0441\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u0430.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u0435\u0440\u0435\u0431\u043e\u0440 [1, '2', '30', '9'].map(function (value) {   return parseInt(value, 10) }) \/\/ 1, 2, 30, 9  [97, 119, 101, 115, 111, 109, 101].map(String.fromCharCode).join('') \/\/ &lt;- 'awesome'  \/\/ \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0448\u0430\u0431\u043b\u043e\u043d \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u043e\u0432\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0445 items.map(function (item) {   return {     id: item.id,     name: computeName(item)   } }) <\/code><\/pre>\n<h6><b>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 .filter<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 filter() \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438, \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u043c\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u0443\u044e \u0432 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.<\/p>\n<p>  \u041c\u0435\u0442\u043e\u0434 filter() \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e callback \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u0443\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f callback \u0432\u0435\u0440\u043d\u0443\u043b\u0430 true \u0438\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0449\u0435\u0435\u0441\u044f true \u043f\u0440\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u0432 boolean. \u0424\u0443\u043d\u043a\u0446\u0438\u044f callback \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f; \u043e\u043d\u0430 \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u044b \u0438\u043b\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u043b\u0438\u0441\u044c. \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u043d\u0435 \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 callback, \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0438 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0432 \u043d\u043e\u0432\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432.<\/p>\n<p>  \u041a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e: .filter(fn(value, index, array), thisArgument). \u0423\u0447\u0438\u0442\u044b\u0432\u0430\u044f, \u0447\u0442\u043e .filter \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 callback-\u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<pre><code class=\"javascript\">[void 0, null, false, '', 1].filter(function (value) {   return value }) \/\/ &lt;- [1]  [void 0, null, false, '', 1].filter(function (value) {   return !value }) \/\/ &lt;- [void 0, null, false, ''] <\/code><\/pre>\n<h6><b>\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .sort<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 sort() \u043d\u0430 \u043c\u0435\u0441\u0442\u0435 \u0441\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043e\u0442\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432. \u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430. \u041f\u043e\u0440\u044f\u0434\u043e\u043a c\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u043a\u043e\u0434\u043e\u0432\u044b\u0445 \u0442\u043e\u0447\u0435\u043a Unicode.<\/p>\n<p>  \u0421\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0430 \u0442\u0430\u043a\u0430\u044f \u0436\u0435 \u043a\u0430\u043a \u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439: Array.prototype.sort(fn(a,b)), \u043c\u0435\u0442\u043e\u0434 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0434\u0432\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0432 \u0438\u0442\u043e\u0433\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u0430\u0434\u0430\u0447\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c:<\/p>\n<ul>\n<li>return value &lt; 0, a \u043f\u0440\u0435\u0434\u0448\u0435\u0441\u0442\u0432\u0443\u0435\u0442 b<\/li>\n<li>return value === 0, \u0435\u0441\u043b\u0438 \u043e\u0431\u0430 \u0430 \u0438 \u042c \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u044b<\/li>\n<li>return value &gt; 0, \u0435\u0441\u043b\u0438 a \u043f\u043e\u0441\u043b\u0435 b<\/li>\n<\/ul>\n<pre><code class=\"javascript\">[9,80,3,10,5,6].sort() \/\/ &lt;- [10, 3, 5, 6, 80, 9]  [9,80,3,10,5,6].sort(function (a, b) {   return a - b }) \/\/ &lt;- [3, 5, 6, 9, 10, 80] <\/code><\/pre>\n<h6><b>\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 .reduce, .reduceRight<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 reduce() \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e callback \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0443\u0441\u0442\u043e\u0442, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044f \u0447\u0435\u0442\u044b\u0440\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430: \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 (\u0438\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430 callback), \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u0438 \u043c\u0430\u0441\u0441\u0438\u0432, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u044f. <\/p>\n<p>  \u0412 \u0446\u0435\u043b\u043e\u043c, \u043c\u0435\u0442\u043e\u0434\u044b reduce() \u0438 reduceRight() \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b, \u0437\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0431\u043e\u0440 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 reduce() \u0438\u0434\u0435\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e, \u0430 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 reduceRight() \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e. <\/p>\n<p>  \u041e\u0431\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 \u0438\u043c\u0435\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0443: reduce(callback(previousValue, currentValue, index, array), initialValue).<\/p>\n<p>  \u041f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0432\u044b\u0437\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b previousValue \u0438 currentValue \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043e\u0434\u043d\u043e \u0438\u0437 \u0434\u0432\u0443\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439. \u0415\u0441\u043b\u0438 \u043f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435 reduce() \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 initialValue, \u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 previousValue \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e initialValue, \u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 currentValue \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u044b\u043c \u043f\u0435\u0440\u0432\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435. \u0415\u0441\u043b\u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 initialValue \u043d\u0435 \u0437\u0430\u0434\u0430\u043d, \u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 previousValue \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u044b\u043c \u043f\u0435\u0440\u0432\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 currentValue \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u044b\u043c \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435.<\/p>\n<p>  \u041e\u0434\u0438\u043d \u0438\u0437 \u0442\u0438\u043f\u0438\u0447\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f .reduce \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441\u0443\u043c\u043c\u044b:  <\/p>\n<pre><code class=\"javascript\">Array.prototype.sum = function () {   return this.reduce(function (partial, value) {     return partial + value   }, 0) };  [3,4,5,6,10].sum() \/\/ &lt;- 28 <\/code><\/pre>\n<p>  \u0421\u043a\u0430\u0436\u0435\u043c, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u043e\u043a \u0432\u043c\u0435\u0441\u0442\u0435. \u041c\u044b \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c .join \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0446\u0435\u043b\u0438. \u041d\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u044d\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043f\u043e\u044d\u0442\u043e\u043c\u0443:  <\/p>\n<pre><code class=\"javascript\">function concat (input) {   return input.reduce(function (partial, value) {     if (partial) {       partial += ', '     }     return partial + value.name   }, '') }  concat([   { name: 'George' },   { name: 'Sam' },   { name: 'Pear' } ]) \/\/ &lt;- 'George, Sam, Pear' <\/code><\/pre>\n<h6><b>\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 .slice<\/b><\/h6>\n<p>  \u041f\u043e\u0434\u043e\u0431\u043d\u043e .concat, \u0432\u044b\u0437\u043e\u0432 .slice \u0431\u0435\u0437 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u0442 \u043d\u0435\u043f\u043e\u043b\u043d\u0443\u044e \u043a\u043e\u043f\u0438\u044e \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0432\u0430 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u2014 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0435. Array.prototype.slice \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u044b.<\/p>\n<pre><code class=\"javascript\">Array.prototype.slice.call({ 0: 'a', 1: 'b', length: 2 }) \/\/ &lt;- ['a', 'b'] <\/code><\/pre>\n<p>  \u041d\u043e \u044d\u0442\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 .concat:  <\/p>\n<pre><code class=\"javascript\">Array.prototype.concat.call({ 0: 'a', 1: 'b', length: 2 }) \/\/ &lt;- [{ 0: 'a', 1: 'b', length: 2 }] <\/code><\/pre>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u0430 .slice \u2014 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043f\u043e \u0441\u043f\u0438\u0441\u043a\u0443 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432:  <\/p>\n<pre><code class=\"javascript\">function format (text, bold) {   if (bold) {     text = '&lt;b&gt;' + text + '&lt;\/b&gt;'   }   var values = Array.prototype.slice.call(arguments, 2)    values.forEach(function (value) {     text = text.replace('%s', value)   })    return text }  format('some%sthing%s %s', true, 'some', 'other', 'things') \/\/ &lt;- &lt;b&gt;somesomethingother things&lt;\/b&gt; <\/code><\/pre>\n<h6><b>\u0411\u043e\u043b\u0435\u0435 \u043c\u043e\u0449\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 .splice<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 splice() \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430, \u0443\u0434\u0430\u043b\u044f\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0438\/\u0438\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044f \u043d\u043e\u0432\u044b\u0435. \u0415\u0441\u043b\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u043c \u043e\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0443\u0434\u0430\u043b\u044f\u0435\u043c\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u0437\u043c\u0435\u043d\u0438\u0442 \u0434\u043b\u0438\u043d\u0443 \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u0437\u043e\u0432\u0430. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u044d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 .concat \u0438\u043b\u0438 .slice.<\/p>\n<pre><code class=\"javascript\">var source = [1,2,3,8,8,8,8,8,9,10,11,12,13] var spliced = source.splice(3, 4, 4, 5, 6, 7)  console.log(source) \/\/ &lt;- [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 ,13]  spliced \/\/ &lt;- [8, 8, 8, 8] <\/code><\/pre>\n<p>  \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0443\u0436\u0435 \u043e\u0442\u043c\u0435\u0447\u0430\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0438 \u0438\u043d\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0433\u043e\u0434\u0438\u0442\u044c\u0441\u044f.  <\/p>\n<pre><code class=\"javascript\">var source = [1,2,3,8,8,8,8,8,9,10,11,12,13] var spliced = source.splice(9)  spliced.forEach(function (value) {   console.log('removed', value) }) \/\/ &lt;- removed 10 \/\/ &lt;- removed 11 \/\/ &lt;- removed 12 \/\/ &lt;- removed 13  console.log(source) \/\/ &lt;- [1, 2, 3, 8, 8, 8, 8, 8, 9] <\/code><\/pre>\n<h6><b>\u041f\u043e\u0438\u0441\u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 .indexOf<\/b><\/h6>\n<p>  \u041c\u0435\u0442\u043e\u0434 indexOf() \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442 \u0438\u0441\u043a\u043e\u043c\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 searchElement \u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 (\u0442\u043e\u0442 \u0436\u0435 \u043c\u0435\u0442\u043e\u0434 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c ===, \u0442\u0440\u043e\u0439\u043d\u043e\u0435 \u0440\u0430\u0432\u043d\u043e).<\/p>\n<pre><code class=\"javascript\">var a = { foo: 'bar' } var b = [a, 2]  console.log(b.indexOf(1)) \/\/ &lt;- -1  console.log(b.indexOf({ foo: 'bar' })) \/\/ &lt;- -1  console.log(b.indexOf(a)) \/\/ &lt;- 0  console.log(b.indexOf(a, 1)) \/\/ &lt;- -1  b.indexOf(2, 1) \/\/ &lt;- 1  b.indexOf(2, a) \/\/ &lt;- 1  b.indexOf(a, 2) \/\/ &lt;- -1 <\/code><\/pre>\n<h6><b>\u0412 \u043f\u043e\u043c\u043e\u0449\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 in<\/b><\/h6>\n<p>  \u0420\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u043e\u0439 \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0445 \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u043e\u0435 \u043c\u043d\u0435\u043d\u0438\u0435 \u043e\u0431 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u043c\u0435\u0442\u043e\u0434\u0430 .indexOf \u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 in.   <\/p>\n<pre><code class=\"javascript\">var a = [1, 2, 5]  1 in a \/\/ &lt;- true  \/\/ \u0442\u0430\u043a \u043a\u0430\u043a \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 a[1], \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0432\u0435\u043d 2!  5 in a \/\/ &lt;- false \/\/ \u0442\u0430\u043a \u043a\u0430\u043a a[5] \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 <\/code><\/pre>\n<p>  \u0414\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 in \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043a\u043b\u044e\u0447 \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0430 \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442 \u043f\u043e\u0438\u0441\u043a \u043f\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044e. \u0422\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0447\u0435\u043c \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 .indexOf:<\/p>\n<pre><code class=\"javascript\">var a = [3, 7, 6]  1 in a === !!a[1] \/\/ &lt;- true <\/code><\/pre>\n<h6><b>\u041f\u0435\u0440\u0435\u0431\u043e\u0440 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0440\u043e\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e .reverse<\/b><\/h6>\n<p>  \u042d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u0442\u044c \u0438\u0445 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435.<\/p>\n<pre><code class=\"javascript\">var a = [1, 1, 7, 8]  a.reverse() \/\/ [8, 7, 1, 1] <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/JavaScript\/Reference\/Global_Objects\/Array\">Array<\/a><br \/>  2. <a href=\"http:\/\/stackoverflow.com\/questions\/17295056\/array-vs-object-efficiency-in-javascript\">Array vs. Object<\/a><br \/>  3. <a href=\"http:\/\/codeabitwiser.com\/2015\/01\/high-performance-javascript-arrays-pt1\/\">\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 JavaScript<\/a><br \/>  4. <a href=\"https:\/\/gamealchemist.wordpress.com\/2013\/05\/01\/lets-get-those-javascript-arrays-to-work-fast\/\">\u0417\u0430\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0435\u0435<\/a><br \/>  5. <a href=\"http:\/\/stackoverflow.com\/questions\/8423493\/what-is-the-performance-of-objects-arrays-in-javascript-specifically-for-googl\">\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c Objects\/Arrays \u0432 JavaScript<\/a><br \/>  6. <a href=\"https:\/\/learn.javascript.ru\/array-iteration\">\u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b<\/a><br \/>  7. <a href=\"https:\/\/ru.wikipedia.org\/wiki\/Underscore\">\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0430\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438, \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u043c\u0438 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438<\/a><\/p>\n<h4><b><a name=\"sixteen\"><\/a>\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/b><\/h4>\n<p>  \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0432\u0443\u0445 \u0441\u043b\u044d\u0448\u0435\u0439 <b>\/ \/<\/b>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u043e\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. \u0412\u043d\u0443\u0442\u0440\u0438 \u0432\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d \u043f\u043e\u0438\u0441\u043a\u0430. \u0421\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043d\u0435 \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0439\u0442\u0435 \u0438\u0445 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043a\u043e\u0434 (inline), \u044d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0441\u0442\u044c.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e if (\/\\d+\/.test(text)) { \/\/ non-precompiled, but faster   console.log('so many numbers!'); } <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var numeric = \/\\d+\/; \/\/ precompiled if (numeric.test(text)) {   console.log('so many numbers!'); } <\/code><\/pre>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0442\u0435\u043c, <a href=\"https:\/\/ponyfoo.com\/articles\/learn-regular-expressions\">\u043a\u0430\u043a \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a> \u0438 \u0443\u0437\u043d\u0430\u0442\u044c \u0434\u043b\u044f \u0447\u0435\u0433\u043e \u043e\u043d\u0438 \u043d\u0443\u0436\u043d\u044b. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0442\u0430\u043a\u0436\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445, <a href=\"https:\/\/regexper.com\/#%2F%5Cd%2B%2F\">\u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0432 \u043e\u043d\u043b\u0430\u0439\u043d \u0440\u0435\u0436\u0438\u043c\u0435<\/a>.<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A0%D0%B5%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F\">\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  2. <a href=\"https:\/\/www.youtube.com\/watch?v=CAXBO9jOXFA\">\u041a\u043b\u0430\u0441\u0441 RegExp<\/a><br \/>  3. <a href=\"https:\/\/learn.javascript.ru\/regular-expressions-javascript\">C\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u0437\u0430\u043c\u0435\u043d\u044b \u0434\u043b\u044f \u0441\u0442\u0440\u043e\u043a<\/a><br \/>  4. <a href=\"https:\/\/learn.javascript.ru\/regexp-methods\">\u041c\u0435\u0442\u043e\u0434\u044b RegExp \u0438 String<\/a><br \/>  5. <a href=\"https:\/\/learn.javascript.ru\/regexp-methods\">JavaScript \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c precompiled \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f<\/a><br \/>  6. <a href=\"http:\/\/corporate.tuenti.com\/en\/dev\/blog\/tips-and-tricks-with-regular-expressions-in-js\">\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u044f \u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/a><br \/>  7. <a href=\"https:\/\/habrahabr.ru\/post\/167015\/\">\u0417\u0430\u0434\u0430\u0447\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u043c\u0438 \u0432\u0430\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438<\/a><\/p>\n<h4><b><a name=\"seventeen\"><\/a>\u041a\u043e\u043d\u0441\u043e\u043b\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430<\/b><\/h4>\n<p>  \u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 console, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u0438 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435. \u042d\u0442\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0451 \u043f\u043e\u043a\u0430 \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f. \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u043c\u0435\u0436\u0434\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u043c\u0438, \u0438 \u0435\u0451 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c\u0441\u044f. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0435\u0451 \u043d\u0430 \u0441\u0430\u0439\u0442\u0430\u0445, \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044f \u0441\u0432\u043e\u0439 \u043a\u043e\u0434 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442. \u041f\u0440\u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0435 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u043e\u0434\u0440\u044f\u0434 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b \u0432\u044b\u0432\u043e\u0434\u0430 (console.log<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/ruseller.com\/lessons.php?rub=28&amp;id=1408\">\u041e\u0442\u043b\u0430\u0434\u043a\u0430 JavaScript \u0434\u043b\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445<\/a><br \/>  2. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/API\/Console#Usage\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 console<\/a><br \/>  3. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/API\/Console#\u0421\u0442\u0435\u043a_\u0432\u044b\u0437\u043e\u0432\u0430\">\u0421\u0442\u0435\u043a \u0432\u044b\u0437\u043e\u0432\u0430. \u0422\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u043a\u0430<\/a><br \/>  4. <a href=\"https:\/\/habrahabr.ru\/post\/143767\/\">\u0412\u0441\u044f \u043f\u0440\u0430\u0432\u0434\u0430 \u043e Chrome. Web Inspector<\/a><br \/>  5. <a href=\"https:\/\/developer.chrome.com\/devtools\/docs\/console-api\">Chrome console API<\/a><\/p>\n<h4><b><a name=\"eighteen\"><\/a>\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438<\/b><\/h4>\n<p>  \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u043d\u0435 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0434\u043b\u044f \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0432\u0430\u0448 \u043a\u043e\u0434. \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u043a\u043e\u0434 \u0434\u043e\u043b\u0436\u0435\u043d \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u0441\u0430\u043c \u0437\u0430 \u0441\u0435\u0431\u044f. \u0415\u0441\u043b\u0438 \u0432\u044b \u0437\u0430\u0434\u0443\u043c\u0430\u043b\u0438\u0441\u044c \u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0432 \u0442\u043e\u043c \u043c\u0435\u0441\u0442\u0435, \u0433\u0434\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u043a\u0443\u0441\u043e\u043a \u0432\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u0434\u0430, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0430\u043c \u043a\u043e\u0434. \u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0443\u0447\u0430\u0441\u0442\u043a\u043e\u0432 \u043a\u043e\u0434\u0430, \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c\u0438 \u043f\u043e \u0442\u0438\u043f\u0443 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043a\u0443\u0441\u043e\u043a \u043a\u043e\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0430\u043a \u0438 \u0432 \u0447\u0435\u043c \u0435\u0433\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u0446\u0435\u043b\u044c.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e \/\/ \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0446\u0435\u043d\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 var p = $('&lt;p\/&gt;'); p.center(div); p.text('foo'); <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e var container = $('&lt;p\/&gt;'); var contents = 'foo'; container.center(parent); container.text(contents); megaphone.on('data', function (value) {   container.text(value); \/\/ megaphone \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 });  var numeric = \/\\d+\/; \/\/ \u043f\u043e\u0438\u0441\u043a \u043e\u0434\u043d\u043e\u0439 \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0446\u0438\u0444\u0440 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 if (numeric.test(text)) {   console.log('so many numbers!'); }  <\/code><\/pre>\n<p>  \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0435 \u0431\u043b\u043e\u043a\u0438 \u043a\u043e\u0434\u0430 \u043d\u0435 \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0432\u0435\u0434\u044c \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439!<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/ruseller.com\/lessons.php?rub=28&amp;id=1111\">16 \u043f\u0440\u0438\u0451\u043c\u043e\u0432 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0443\u043f\u0435\u0440\u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430<\/a><br \/>  2. <a href=\"http:\/\/www.hongkiat.com\/blog\/source-code-comment-styling-tips\/\">\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430<\/a><br \/>  3. <a href=\"http:\/\/stackoverflow.com\/questions\/10126310\/does-javascript-have-a-standard-for-commenting-functions\">\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439<\/a><br \/>  4. <a href=\"http:\/\/www.fusioncharts.com\/blog\/2013\/12\/jsdoc-vs-yuidoc-vs-doxx-vs-docco-choosing-a-javascript-documentation-generator\/\">\u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u044b JavaScript-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a><\/p>\n<h4><b><a name=\"nineteen\"><\/a>\u0418\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435<\/b><\/h4>\n<p>  \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043e\u0441\u043c\u044b\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f. \u0412\u044b \u0432\u0435\u0434\u044c \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u0431\u0435\u0433\u0430\u0442\u044c \u043a \u0447\u0442\u0435\u043d\u0438\u044e \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432 \u0438\u043b\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430.<\/p>\n<pre><code class=\"javascript\">\/\/ \u043f\u043b\u043e\u0445\u043e function a (x, y, z) {   return z * y \/ x; } a(4, 2, 6); \/\/ &lt;- 3 <\/code><\/pre>\n<pre><code class=\"javascript\">\/\/ \u0445\u043e\u0440\u043e\u0448\u043e function ruleOfThree (had, got, have) {   return have * got \/ had; } ruleOfThree(4, 2, 6); \/\/ &lt;- 3 <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/www.w3schools.com\/js\/js_conventions.asp\">JavaScript Style Guide and Coding Conventions<\/a><\/p>\n<h4><b><a name=\"twenty\"><\/a>Polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438<\/b><\/h4>\n<p>  \u0422\u0430\u043c, \u0433\u0434\u0435 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430, \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u043d\u0438 \u043f\u043e\u043f\u0440\u043e\u0441\u0442\u0443 \u043d\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044d\u043c\u0443\u043b\u0438\u0440\u0443\u044e\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043d\u0430\u043c \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u044d\u0442\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u0441\u0442\u0430\u0440\u044b\u0445 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445. \u0412 \u0438\u0442\u043e\u0433\u0435, \u043d\u0430\u043c \u043b\u0435\u0433\u0447\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043a\u043e\u0434\u043e\u043c, \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0433\u0440\u043e\u043c\u043e\u0436\u0434\u0430\u0442\u044c \u0435\u0433\u043e \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u043c\u0438 \u0438 \u043f\u0440\u043e\u0447\u0438\u043c\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043e\u0431\u0435\u0440\u043d\u0443\u0432 \u0438\u0445 \u0432 \u0441\u0432\u043e\u0439 polyfill. <\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/learn.javascript.ru\/dom-polyfill\">\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 DOM: \u043f\u043e\u043b\u0438\u0444\u0438\u043b\u043b\u044b<\/a><br \/>  2. <a href=\"http:\/\/www.creativebloq.com\/html5\/10-best-polyfills-2133015\">10 \u043b\u0443\u0447\u0448\u0438\u0445 polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/a><br \/>  3. <a href=\"http:\/\/html5please.com\/#polyfill\">\u0421\u043f\u0438\u0441\u043e\u043a \u0433\u043e\u0442\u043e\u0432\u044b\u0445 polyfill-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a<\/a><\/p>\n<h4><b><a name=\"twenty-one\"><\/a>\u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0445\u0438\u0442\u0440\u043e\u0441\u0442\u0438<\/b><\/h4>\n<p>  1. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 <b>||<\/b>, \u0447\u0442\u043e\u0431\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0432\u0430 \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u043b\u043e\u0436\u043d\u044b\u043c, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430 \u043f\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e \u043a \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0443 (false || true). \u041f\u0440\u0438\u043c\u0438\u0442\u0435 \u043a \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044e, \u0438\u0437-\u0437\u0430 \u0441\u043b\u0430\u0431\u043e\u0433\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a false, 0, null \u0438\u043b\u0438 &#187;, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043b\u043e\u0436\u043d\u044b\u043c\u0438, \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u0443\u043a\u0430\u0436\u0435\u0442\u0435 \u0441\u043f\u0440\u0430\u0432\u0430 \u043f\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e \u043a \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0443. \u0414\u043b\u044f \u0441\u0442\u0440\u043e\u0433\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0442\u0438\u043f\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0430\u043a\u0443\u044e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e: <i>if (value === void 0) { value = defaultValue } <\/i><\/p>\n<pre><code class=\"javascript\">function a (value) {   var defaultValue = 33;   var used = value || defaultValue; } <\/code><\/pre>\n<p>  2. \u0414\u043b\u044f <a href=\"http:\/\/ejohn.org\/blog\/partial-functions-in-javascript\/\">\u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438<\/a>, \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c .bind  <\/p>\n<pre><code class=\"javascript\">function sum (a, b) {   return a + b; }  var addSeven = sum.bind(null, 7);  addSeven(6); \/\/ &lt;- 13 <\/code><\/pre>\n<p>  3. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <a href=\"http:\/\/www.cyberforum.ru\/javascript\/thread170960.html\">Array.prototype.slice.call<\/a>, \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u0437 \u043e\u0431\u044a\u0435\u043a\u0442\u0430  <\/p>\n<pre><code class=\"javascript\">var args = Array.prototype.slice.call(arguments); <\/code><\/pre>\n<p>  4. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <a href=\"https:\/\/github.com\/bevacqua\/contra#%CE%BBemitterthing-options\">\u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439<\/a> \u043d\u0430 \u0432\u0441\u0435 \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e!  <\/p>\n<pre><code class=\"javascript\">var emitter = contra.emitter(); \/\/ example, event emitters: jQuery, Angular, React ..  body.addEventListener('click', function () {   emitter.emit('click', e.target); });  emitter.on('click', function (elem) {   console.log(elem); });  \/\/ \u044d\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u043a\u043b\u0438\u043a\u0430 emitter.emit('click', document.body); <\/code><\/pre>\n<p>  5. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u0430 \u043f\u0443\u0441\u0442\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f (no-op), \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 Function()  <\/p>\n<pre><code class=\"javascript\">function (cb) {   setTimeout(cb || Function(), 2000); } <\/code><\/pre>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"http:\/\/browserhacks.com\/\">browserhacks<\/a><br \/>  2. <a href=\"https:\/\/habrahabr.ru\/post\/240357\/\">5 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 JavaScript-\u0445\u0430\u043a\u043e\u0432<\/a><br \/>  3. <a href=\"https:\/\/habrahabr.ru\/post\/204430\/\">\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e JavaScript \u0445\u0430\u043a\u043e\u0432 \u0434\u043b\u044f \u0445\u0438\u043f\u0441\u0442\u0435\u0440\u043e\u0432<\/a><br \/>  4. <a href=\"https:\/\/developer.mozilla.org\/ru\/docs\/Web\/Guide\/Events\/%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B8_%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2_%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D0%B9\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438 \u0432\u044b\u0437\u043e\u0432 \u0441\u043e\u0431\u044b\u0442\u0438\u0439<\/a><br \/>  5. <a href=\"https:\/\/habrahabr.ru\/post\/117868\/\">\u041c\u0430\u0433\u0438\u044f JavaScript: arguments<\/a><\/p>\n<h4><b><a name=\"twenty-two\"><\/a>\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e ES6<\/b><\/h4>\n<p>  \u042f\u0437\u044b\u043a JavaScript \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 ECMA (\u043d\u0430\u043f\u043e\u0434\u043e\u0431\u0438\u0435 W3C), \u0430 \u0441\u0430\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u043d\u043e\u0441\u0438\u0442 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 ECMAScript. ECMAScript \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<ul>\n<li>\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u044f\u0437\u044b\u043a\u0430 \u2014 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430, \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0441\u043b\u043e\u0432\u0430, \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u043f\u0440\u043e\u0447\u0435\u0435<\/li>\n<li>\u0422\u0438\u043f\u044b \u2014 \u0447\u0438\u0441\u043b\u0430, \u0441\u0442\u0440\u043e\u043a\u0438, \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0438 \u043f\u0440\u043e\u0447\u0435\u0435<\/li>\n<li>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0438 \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435<\/li>\n<li>\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0443\u044e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u2014 JSON, Math, \u043c\u0435\u0442\u043e\u0434\u044b \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432, \u043c\u0435\u0442\u043e\u0434\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u0442\u043e\u043c\u0443 \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435<\/li>\n<\/ul>\n<p>  \u0412 2009 \u0433\u043e\u0434\u0443 ES5 \u0431\u044b\u043b \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d (\u043f\u043e\u0437\u0436\u0435 ES5.1 \u0432 2011), \u0438 \u0441\u0442\u0430\u043b \u0448\u0438\u0440\u043e\u043a\u043e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c \u0434\u043b\u044f \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a Firefox, Chrome, Opera, Safari \u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445. \u0412 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 JS (\u0432 2013, \u043f\u043e\u0442\u043e\u043c \u0432 2014, \u0430 \u0437\u0430\u0442\u0435\u043c \u0443\u0436\u0435 \u0438 \u0432 2015) \u0441\u0430\u043c\u043e\u0439 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u043c\u043e\u0439 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0442\u043a\u043e\u0439 \u0431\u044b\u043b\u0430 \u2014 ES6. <\/p>\n<p>  ES6 \u2014 \u044d\u0442\u043e \u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u043a\u0430\u0447\u043e\u043a \u0432\u043f\u0435\u0440\u0435\u0434. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u044b \u0434\u0443\u043c\u0430\u0435\u0442\u0435, \u0447\u0442\u043e \u0437\u043d\u0430\u0435\u0442\u0435 JS (ES5), \u0442\u043e ES6 \u043f\u043e\u043b\u043e\u043d \u043d\u043e\u0432\u044b\u0445 \u0432\u0435\u0449\u0435\u0439, \u043e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u0430\u043c \u0435\u0449\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438\u0442 \u0443\u0437\u043d\u0430\u0442\u044c. \u0422\u0430\u043a \u0447\u0442\u043e \u0431\u0443\u0434\u044c\u0442\u0435 \u0433\u043e\u0442\u043e\u0432\u044b! ES6 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f. \u042d\u0442\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0433\u0438\u0445 \u043b\u0435\u0442 \u0441\u043b\u0430\u0436\u0435\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b. \u0418 \u044d\u0442\u043e \u043a\u043b\u0430\u0434 \u043d\u043e\u0432\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u044f\u0437\u044b\u043a\u0430. \u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u043d\u0430\u0447\u0438\u043c\u043e\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 JS, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0431\u044b\u043b\u043e \u043a\u043e\u0433\u0434\u0430-\u043b\u0438\u0431\u043e. \u041d\u043e\u0432\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0432\u0430\u0440\u044c\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043e\u0442 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0443\u0434\u043e\u0431\u0441\u0442\u0432 \u0432\u0440\u043e\u0434\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439-\u0441\u0442\u0440\u0435\u043b\u043e\u043a \u0438 \u0438\u043d\u0442\u0435\u0440\u043f\u043e\u043b\u044f\u0446\u0438\u0438 \u0441\u0442\u0440\u043e\u043a \u0434\u043e \u043c\u043e\u0437\u0433\u043e\u0432\u0437\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0439 \u0432\u0440\u043e\u0434\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 \u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432, \u043d\u043e \u0443\u0436\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0435\u0433\u043e \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044e (\u0441\u0441\u044b\u043b\u043a\u0438 \u0432 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u0435 \u043d\u0438\u0436\u0435).<\/p>\n<h5><b>\u041a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e:<\/b><\/h5>\n<p>  1. <a href=\"https:\/\/github.com\/airbnb\/javascript\">\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 Style Guide \u043f\u043e ES6<\/a><br \/>  2. <a href=\"https:\/\/github.com\/DrkSephy\/es6-cheatsheet\">\u0428\u043f\u0430\u0440\u0433\u0430\u043b\u043a\u0430 \u043f\u043e ES6<\/a><br \/>  3. <a href=\"https:\/\/github.com\/ericdouglas\/ES6-Learning#built-with-es6\">\u0412\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u0434\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f ES6<\/a><br \/>  4. <a href=\"https:\/\/habrahabr.ru\/post\/257005\/\">ES6 \u0432 \u0434\u0435\u0442\u0430\u043b\u044f\u0445: \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a><br \/>  5. <a href=\"https:\/\/habrahabr.ru\/post\/257355\/\">ES6 \u0438 \u0437\u0430 \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u043c\u0438<\/a><br \/>  6. <a href=\"https:\/\/habrahabr.ru\/post\/252323\/\">\u041f\u0440\u0438\u043c\u0435\u0440\u044b ECMAScript 6<\/a><br \/>  7. <a href=\"https:\/\/github.com\/bevacqua\/es6\">350 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432 ES6<\/a>               <\/p>\n<div class=\"clear\"><\/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=\"https:\/\/habrahabr.ru\/post\/281110\/\"> https:\/\/habrahabr.ru\/post\/281110\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>       <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/2cc\/b9b\/314\/2ccb9b3146ac4f5d8128460b6385d740.jpg\" align=\"left\"\/>   <\/p>\n<h4><b>JavaScript quality guide<\/b><\/h4>\n<p>  \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043e\u0432\u0435\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u0439 \u043b\u044e\u0431\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. <\/p>\n<h4><b>\u041e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430<\/b><\/h4>\n<p>  \u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442, \u0441 \u0432\u0430\u043c\u0438 \u041c\u0430\u043a\u0441\u0438\u043c \u0418\u0432\u0430\u043d\u043e\u0432, \u0438 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e <a href=\"https:\/\/github.com\/bevacqua\/js\">\u043f\u0440\u0430\u0432\u0438\u043b\u0430\u0445 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript<\/a>. <a href=\"https:\/\/dribbble.com\/bdc\">\u041d\u0438\u043a\u043e\u043b\u044f \u0411\u044d\u0432\u0430\u043a\u0443\u0430<\/a> (Nicol\u00e1s Bevacqua), \u0430\u0432\u0442\u043e\u0440 \u043a\u043d\u0438\u0433\u0438 \u00ab\u0414\u0438\u0437\u0430\u0439\u043d JavaScript-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439\u00bb (JavaScript Application Design), \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0438\u0437 \u0410\u0440\u0433\u0435\u043d\u0442\u0438\u043d\u044b, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u0434\u0430\u043d\u043d\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u0430\u0432\u043d\u043e, \u043f\u0435\u0440\u0432\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0435\u0449\u0435 \u0432 2014 \u0433\u043e\u0434\u0443, \u043c\u043d\u043e\u0433\u043e\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043f\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0443 ES5, \u043e\u0434\u043d\u0430\u043a\u043e, \u0432 \u043d\u0430\u0448\u0438 \u0434\u043d\u0438 \u044d\u0442\u043e \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e, \u0441\u0435\u0439\u0447\u0430\u0441, \u043a\u043e\u0433\u0434\u0430 ES6 \u0435\u0449\u0435 \u043d\u0438\u0433\u0434\u0435 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 babel \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u0442\u0440\u0430\u043d\u0441\u043f\u0430\u0439\u043b\u0435\u0440\u043e\u0432. \u0425\u043e\u0442\u044f \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u0432 \u0442\u043e\u043f\u043e\u0432\u044b\u0445 \u0434\u0435\u0441\u043a\u0442\u043e\u043f\u043d\u044b\u0445 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445 (Google Crhome, Firefox), \u0433\u0434\u0435 \u0443\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e 70-90% \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043d\u043e\u0433\u043e, \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043e\u043d\u0438 \u0441\u0442\u0440\u0435\u043c\u044f\u0442\u0441\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442, \u043d\u043e, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, <a href=\"https:\/\/kangax.github.io\/compat-table\/es6\/\">\u0435\u0449\u0451 \u043d\u0435\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c ES6<\/a>. \u041a \u0441\u043b\u043e\u0432\u0443, \u044f \u0431\u0443\u0434\u0443 \u043e\u0447\u0435\u043d\u044c \u0440\u0430\u0434 \u0432\u0430\u0448\u0438\u043c \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u043c. \u0412 \u043e\u0431\u0449\u0435\u043c, \u0443\u0434\u0430\u0447\u0438 \u0438 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0430\u0447\u043d\u0435\u043c.  <\/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-277808","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/277808","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=277808"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/277808\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=277808"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=277808"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=277808"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}