{"id":350360,"date":"2023-07-17T15:02:31","date_gmt":"2023-07-17T15:02:31","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=350360"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=350360","title":{"rendered":"<span>\u0420\u0430\u0431\u043e\u0442\u0430 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0432 JS \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0437\u0430\u0434\u0430\u0447\u043a\u0438<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041d\u0435\u0434\u0430\u0432\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 &#171;\u0442\u0438\u043f\u043e\u0432\u044b\u0445&#187; \u0437\u0430\u0434\u0430\u0447 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u0445. \u041f\u0440\u043e\u0441\u0442\u043e \u0443\u0432\u0438\u0434\u0435\u043b \u0442\u0430\u043a\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u0438 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u043e\u043d\u044f\u043b \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0410 \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u0443\u0441\u0442\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u0430\u0435\u0442 <code>0<\/code>.<\/p>\n<p><code>![] == []<\/code> <\/p>\n<p>\u0422\u0430\u043a\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u043d\u0435\u0442 <code>true<\/code>.<\/p>\n<p>\u0420\u0435\u0448\u0438\u043b \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0448\u0430\u0433 \u0437\u0430 \u0448\u0430\u0433\u043e\u043c.<\/p>\n<h2>TL;DR<\/h2>\n<ol>\n<li>\n<p><code>![]<\/code> &#8212; \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442<code>false<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u0431\u044a\u0435\u043a\u0442 \u0432 Boolean \u0432\u0441\u0435\u0433\u0434\u0430 <code>true<\/code> \u0438 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c <code>true<\/code> &#8212; \u044d\u0442\u043e <code>false<\/code><\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0433\u0434\u0435 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0438\u043c\u0435\u044e\u0442 \u0440\u0430\u0437\u043d\u044b\u0439 \u0442\u0438\u043f, \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u043a \u0447\u0438\u0441\u043b\u0443<\/p>\n<\/li>\n<li>\n<p><code>false<\/code> \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0447\u0438\u0441\u043b\u043e <code>0<\/code><\/p>\n<\/li>\n<li>\n<p>\u041f\u0443\u0441\u0442\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0447\u0438\u0441\u043b\u043e <code>0<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043a \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u0443 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0437\u0432\u0430\u043d \u0441\u043d\u0430\u0447\u0430\u043b\u0430 <code>valueOf<\/code>, \u043f\u043e\u0442\u043e\u043c <code>toString<\/code> (\u0438\u043d\u043e\u0433\u0434\u0430 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u043d\u044b\u0439) \u0438 \u0432\u043e\u0437\u044c\u043c\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0437\u043e\u0432\u0430. \u0423 \u043d\u0430\u0441 \u0432\u043e\u0437\u044c\u043c\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0437\u043e\u0432\u0430 <code>toString<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432 (<code>valueOf<\/code> \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0435, \u0432\u0435\u0440\u043d\u0435\u0442 \u0442\u043e\u0442 \u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442). <code>toString<\/code> \u043d\u0430\u043c \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u044b\u0437\u043e\u0432 <code>toString<\/code> \u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0435\u0433\u043e \u043c\u0435\u0442\u043e\u0434 <code>join<\/code>, \u0430 \u043c\u0435\u0442\u043e\u0434 <code>join<\/code> \u0441 \u043f\u0443\u0441\u0442\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0443\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 <code>''<\/code>, \u0430 \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 <code>''<\/code> \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432 <code>0<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 <code>0<\/code> \u0438 <code>0<\/code> \u0434\u0430\u0434\u0443\u0442 <code>true<\/code><\/p>\n<\/li>\n<\/ol>\n<h2>\u041f\u043e\u0434\u0441\u0447\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439<\/h2>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0443 \u043d\u0430\u0441 \u0438\u043c\u0435\u0435\u0442\u0441\u044f <code>4<\/code> \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f (Expressions).<\/p>\n<p>\u041f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 13 (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-ecmascript-language-expressions\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-ecmascript-language-expressions<\/a>). \u0422\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u043c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043a\u0440\u0430\u0441\u0438\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0447\u043a\u0438. \u041f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0438\u0434\u0442\u0438 \u043f\u043e \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430\u043c \u0438 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0447\u0442\u043e \u0432 \u043a\u0430\u043a\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f.<\/p>\n<pre><code>![] == []  ^^ -> 1  ![] == [] ^^^ -> 2  ![] == []        ^^ -> 3  ![] == [] ^^^^^^^^^^ -> 4<\/code><\/pre>\n<ol>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/p>\n<\/li>\n<li>\n<p>\u0412\u044b\u0437\u043e\u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u041d\u0415 c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/p>\n<\/li>\n<li>\n<p>\u041d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e<\/p>\n<\/li>\n<\/ol>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e 4 \u043f\u0443\u043d\u043a\u0442\u0430.<\/p>\n<p>\u0412\u0438\u0434\u0438\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c: (<code>[?In, ?Yield, ?Await]<\/code> &#8212; \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u043b, \u0447\u0442\u043e \u0431\u044b \u043d\u0435 \u043f\u0443\u0442\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434 \u0433\u043b\u0430\u0437\u0430\u043c\u0438, \u0434\u0430\u043d\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430\u0441 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442)<\/p>\n<pre><code>EqualityExpression : RelationalExpression EqualityExpression == RelationalExpression EqualityExpression != RelationalExpression EqualityExpression === RelationalExpression EqualityExpression !== RelationalExpression<\/code><\/pre>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0447\u0442\u043e <code>EqualityExpression<\/code> \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u0430 \u0447\u0435\u043c\u0443 \u0442\u043e \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430.<br \/>\u0412\u043e\u0437\u044c\u043c\u0435\u043c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>0 == 0 == 0<\/code><\/p>\n<p>\u0415\u0433\u043e \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u0430\u043a:<\/p>\n<pre><code>EqualityExpression == RelationalExpression ^^^^^^^^^^^^^^^^^^ -> EqualityExpression == RelationalExpression EqualityExpression == RelationalExpression == RelationalExpression ^^^^^^^^^^^^^^^^^^ -> RelationalExpression RelationalExpression == RelationalExpression == RelationalExpression<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043d\u0435 \u0441\u0442\u0430\u043b\u0438 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c <code>RelationalExpression<\/code> \u0434\u0430\u043b\u0435\u0435 \u043f\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438, \u043d\u043e \u043d\u0438\u0436\u0435 \u043c\u044b \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c.<\/p>\n<p>\u0412\u0441\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u044f\u0442\u044c \u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0443\u0437\u0435\u043b &#8212; \u044d\u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u0441\u0430\u043c\u044b\u043c \u043d\u0438\u0437\u043a\u0438\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c, \u0430 \u0435\u0433\u043e \u043b\u0438\u0441\u0442\u044c\u044f &#8212; \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u0438\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u0441\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u0441\u044f \u043f\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0439. <\/p>\n<p><code>RelationalExpression<\/code> :<\/p>\n<pre><code>RelationalExpression : ShiftExpression RelationalExpression &lt; ShiftExpression RelationalExpression > ShiftExpression RelationalExpression &lt;= ShiftExpression RelationalExpression >= ShiftExpression RelationalExpression instanceof ShiftExpression RelationalExpression in ShiftExpression PrivateIdentifier in ShiftExpression<\/code><\/pre>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c \u0443 \u043d\u0430\u0441 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u043d\u0430\u0431\u043e\u0440 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435 \u0432\u043d\u0438\u0437, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0439\u0434\u0435\u043c \u0434\u043e \u0441\u0430\u043c\u044b\u0445 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>RelationalExpression<\/code> \u043c\u043e\u0436\u0435\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>RelationalExpression &lt; ShiftExpression<\/code>. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0432\u0435\u0440\u0445\u043d\u0438\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0432\u0435\u0441\u044c \u043d\u0430\u0431\u043e\u0440 \u043d\u0438\u0436\u043d\u0438\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0437\u044f\u0432 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>RelationalExpression<\/code> \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u044d\u0442\u0438\u043c \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u043d\u0435\u0433\u043e, \u043e\u0442 <code>UpdateExpression **  ExponentiationExpression<\/code> \u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e <code>Literal<\/code>, \u043d\u043e \u043d\u0435 \u0432\u044b\u0448\u0435 \u0446\u0435\u043f\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u043d\u043e \u0443\u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f <code>EqualityExpression<\/code>, \u0430 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u0431\u0443\u0434\u0435\u0442 \u0435\u0433\u043e \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c.<\/p>\n<p>\u0412\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0441 \u043d\u0430\u0448\u0438\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430\u043c\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<\/p>\n<ol>\n<li>\n<p>EqualityExpression<\/p>\n<\/li>\n<li>\n<p>RelationalExpression<\/p>\n<\/li>\n<li>\n<p>ShiftExpression<\/p>\n<\/li>\n<li>\n<p>AdditiveExpression<\/p>\n<\/li>\n<li>\n<p>MultiplicativeExpression<\/p>\n<\/li>\n<li>\n<p>ExponentiationExpression<\/p>\n<\/li>\n<li>\n<p>UnaryExpression<\/p>\n<\/li>\n<li>\n<p>UpdateExpression<\/p>\n<\/li>\n<li>\n<p>LeftHandSideExpression<\/p>\n<\/li>\n<li>\n<p>NewExpression<\/p>\n<\/li>\n<li>\n<p>MemberExpression<\/p>\n<\/li>\n<li>\n<p>PrimaryExpression<\/p>\n<\/li>\n<li>\n<p>Literal<\/p>\n<\/li>\n<\/ol>\n<p>\u0412\u0441\u0435. \u0414\u0430\u043b\u0435\u0435 \u0443\u0436\u0435 \u0438\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u0430:<\/p>\n<ol>\n<li>\n<p>NumericLiteral<\/p>\n<\/li>\n<li>\n<p>DecimalLiteral<\/p>\n<\/li>\n<li>\n<p>DecimalIntegerLiteral<\/p>\n<\/li>\n<li>\n<p>0<\/p>\n<\/li>\n<\/ol>\n<p>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u043d\u0430\u0448 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u043d\u0430 \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0438\u0436\u0435 \u043f\u043e \u0434\u0435\u0440\u0435\u0432\u0443 (\u0438\u0437 \u043a\u0430\u043a\u0438\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c)<\/p>\n<p>\u0412 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0446\u043e\u0432 \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a: <\/p>\n<pre><code>1) EqualityExpression == RelationalExpression 2) (EqualityExpression == RelationalExpression) == RelationalExpression 3) ((RelationalExpression) == RelationalExpression) == RelationalExpression \u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c RelationalExpression \u043d\u0430 \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0438\u0436\u0435 \u043f\u043e \u0434\u0435\u0440\u0435\u0432\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0439\u0434\u0435\u043c \u0434\u043e \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. ... \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435, \u0434\u043e: Literal == Literal == Literal   \u0447\u0442\u043e \u0441\u0442\u0430\u043d\u0435\u0442: 0 == 0 == 0<\/code><\/pre>\n<p>\u0427\u0442\u043e \u0431\u044b \u0437\u0430\u043a\u0440\u0435\u043f\u0438\u0442\u044c, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430\u0447\u0430\u043b\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438 <code>1 + 1 == 0 == 0<\/code>.<\/p>\n<p>\u0411\u0443\u0434\u0443 \u0437\u0430\u043c\u0435\u043d\u044f\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0435\u0431\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 <code>1 + 1<\/code><\/p>\n<pre><code>1) EqualityExpression == RelationalExpression 2) (EqualityExpression == RelationalExpression) == RelationalExpression 3) ((RelationalExpression) == RelationalExpression) == RelationalExpression 4) (((ShiftExpression)) == RelationalExpression) == RelationalExpression 5) ((((AdditiveExpression))) == RelationalExpression) == RelationalExpression 6) (((((AdditiveExpression + MultiplicativeExpression)))) == RelationalExpression) == RelationalExpression ... n) (((((Literal + Literal)))) == Literal) == Literal ----- (((((1 + 1)))) == 0) == 0<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u0430\u043c\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u044f \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0430\u0447\u0430\u043b\u0430, \u0432\u043e\u0442 \u0432\u0430\u043c \u0441\u0430\u043c\u044b\u0439 \u043c\u0435\u043d\u0435\u0435 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-comma-operator\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-comma-operator<\/a>)<\/p>\n<h2>\u041f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439<\/h2>\n<p>\u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043a\u0430\u043a \u0431\u0443\u0434\u0442\u043e \u043c\u044b <strong>\u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u043e\u0433\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430. \u0422\u0430\u043a \u043e\u043d\u043e \u0438 \u0435\u0441\u0442\u044c! \u041d\u043e \u043a\u0430\u043a \u0442\u0430\u043a? <\/p>\n<p>\u0412\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e. \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432, \u0443 \u0432\u0430\u0441 \u0438\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043b\u0435\u0432\u044b\u0445 \u0438 \u043f\u0440\u0430\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432. \u0418 \u043f\u043e\u043a\u0430 \u043e\u043d\u0438 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043b\u0438\u0441\u044c, \u043d\u0430\u0448\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <strong>\u0436\u0434\u0435\u0442<\/strong>(\u0435\u0441\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c\u0441\u044f) \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041f\u0440\u043e\u0441\u0442\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 &#8212; \u0441\u0430\u043c\u044b\u0439 \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u0435\u0440\u0432\u044b\u043c, \u043d\u043e \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0441\u0430\u043c\u044b\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c. \u041c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u043e \u043a\u0430\u043a \u0441\u0442\u0435\u043a \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u0433\u0434\u0435 \u0432 \u0441\u0430\u043c\u043e\u043c \u0432\u0435\u0440\u0445\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u0441\u0430\u043c\u0430\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f, \u0430 \u0432 \u0441\u0430\u043c\u043e\u043c \u043d\u0438\u0437\u0443 &#8212; \u0441\u0430\u043c\u0430\u044f \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f.<\/p>\n<p>\u0412\u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438\u0437\u00a0\u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438:(<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-equality-operators-runtime-semantics-evaluation\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-equality-operators-runtime-semantics-evaluation<\/a>)<\/p>\n<pre><code>EqualityExpression == RelationalExpression  1. Let lref be ? Evaluation of EqualityExpression. 2. Let lval be ? GetValue(lref). 3. Let rref be ? Evaluation of RelationalExpression. 4. Let rval be ? GetValue(rref). 5. Return ? IsLooselyEqual(rval, lval).<\/code><\/pre>\n<p>\u0412\u0438\u0434\u043d\u043e \u0447\u0442\u043e \u043d\u0430 <code>1<\/code> \u0448\u0430\u0433\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f <code>Evaluation<\/code> \u043d\u0430\u0448\u0435\u0433\u043e \u043b\u0435\u0432\u043e\u0433\u043e \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430(<code>EqualityExpression<\/code>), \u0430 \u043d\u0430 <code>3<\/code> \u0448\u0430\u0433\u0435 \u043f\u0440\u0430\u0432\u043e\u0433\u043e(<code>RelationalExpression<\/code>). \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u043a\u0430 \u043d\u0430\u0448\u0438 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u0441\u044f, \u0448\u0430\u0433 <code>5<\/code> \u043d\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442. \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u0434\u0435\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0432\u0441\u0435 \u043b\u0435\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b (\u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u044b), \u043f\u043e\u0442\u043e\u043c \u043f\u0440\u0430\u0432\u044b\u0435.<\/p>\n<p>\u041a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0438 <code>1 + 2 * 3 == 4<\/code> \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b <strong>\u0437\u0430\u043a\u043e\u043d\u0447\u0430\u0442<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443  &#8212;  \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0442\u043e\u043c \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043f\u043e\u0442\u043e\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435, \u043d\u043e <strong>\u043d\u0430\u0447\u043d\u0443\u0442<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u0441\u044f \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 &#8212; \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435, \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435. \u0410 \u0442\u043e\u0447\u043d\u0435\u0435:<\/p>\n<pre><code>\u250c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 == \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u2502   \u2502   \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 1 \u2502   \u2502   \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 1 \u2502   \u2502   \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f * \u2502   \u2502   \u2502       \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 2 \u2502   \u2502   \u2502       \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 2 \u2502   \u2502   \u2502       \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 3 \u2502   \u2502   \u2502       \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 3 \u2502   \u2502   \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 6 \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 7 \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 4 \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 4 \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 false<\/code><\/pre>\n<ul>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f &#8212; <code>(1 + 2 * 3)<\/code> \u0438 <code>(4)<\/code><\/p>\n<\/li>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f &#8212; <code>(1)<\/code> \u0438 <code>(2 * 3)<\/code><\/p>\n<\/li>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f &#8212; <code>(2)<\/code> \u0438 <code>(3)<\/code><\/p>\n<\/li>\n<\/ul>\n<p>\u0418 \u044d\u0442\u043e \u043b\u043e\u0433\u0438\u0447\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0441\u0435\u0440\u0430. \u0412\u044b \u0441\u0442\u0440\u043e\u0438\u0442\u0435 \u0434\u0435\u0440\u0435\u0432\u043e. \u0413\u0434\u0435 \u043d\u0430 \u0441\u0430\u043c\u043e\u0439 \u0432\u0435\u0440\u0445\u0443\u0448\u043a\u0435 \u0431\u0443\u0434\u0435\u0442 \u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u0441 \u0435\u0433\u043e \u043b\u0438\u0441\u0442\u044c\u044f\u043c\u0438 &#8212; \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430\u043c\u0438, \u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u0435\u0440\u0432\u044b\u043c(\u0435\u0441\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c\u0441\u044f).<\/p>\n<pre><code>        1 + 2 * 3 == 4                   \/ \\                  \/   \\                 \/     4            1 + 2 * 3                \/ \\                   \/   \\             1     \\                  2 * 3                   \/ \\                  \/   \\                 2     3<\/code><\/pre>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435\u0435 \u0431\u044b\u043b\u043e \u0431\u044b \u044d\u0442\u043e \u0434\u0435\u0440\u0435\u0432\u043e \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0436\u0435 \u0442\u0430\u043a:<\/p>\n<pre><code>                  ==                   \/ \\                  \/   \\                 \/     4                +                \/ \\                   \/   \\             1     \\                    *                   \/ \\                  \/   \\                 2     3<\/code><\/pre>\n<p>\u041a\u0430\u043a \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435, \u0437\u0434\u0435\u0441\u044c 7 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432 (\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 expression). \u0412\u043e\u043e\u0431\u0449\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0442\u0435 \u0436\u0435 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0435 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u044f (AST).<\/p>\n<h2>\u0420\u0430\u0437\u0431\u043e\u0440 \u043f\u0440\u0438\u043c\u0435\u0440\u0430<\/h2>\n<p>\u0412\u0435\u0440\u043d\u0435\u043c\u0441\u044f \u043a \u043d\u0430\u0448\u0435\u043c\u0443 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u0443.<\/p>\n<pre><code>       ![] == []           \/ \\          \/   \\        ![]    \\          \\    []          []  <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u043e\u0436\u0435 \u0435\u0433\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u043c \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0438\u0434\u0435<\/p>\n<pre><code>           =           \/ \\          \/   \\         !     \\          \\    []          []  <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e \u0448\u0430\u0433\u0430\u043c \u043f\u043e\u043b\u0443\u0447\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430\u0448\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432.<\/p>\n<h4>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/h4>\n<p>1)\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 &#8212; \u0442\u0443\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e.<\/p>\n<h4>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u041d\u0415 ( ! )<\/h4>\n<p>2)\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u041d\u0415 \u043a \u043c\u0430\u0441\u0441\u0438\u0432\u0443. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043c. \u041f\u043e\u043d\u044f\u0442\u043d\u043e\u0435 \u0434\u0435\u043b\u043e \u0432\u0441\u0435 \u0437\u043d\u0430\u044e \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u043d\u0435\u0442 <code>false<\/code>, \u043d\u043e \u043f\u043e\u0447\u0435\u043c\u0443? \u041e\u0442\u0432\u0435\u0442 \u043a\u0430\u043a \u0438 \u0432\u0441\u0435\u0433\u0434\u0430, \u0434\u0430 \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0442\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438. \u0412\u043e\u0442 \u0438 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0442\u0430\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e:<\/p>\n<p><code>Logical NOT Operator ( ! )<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-logical-not-operator\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-logical-not-operator<\/a>)<\/p>\n<pre><code>1. Let expr be ? Evaluation of UnaryExpression. 2. Let oldValue be ToBoolean(? GetValue(expr)). 3. If oldValue is true, return false. 4. Return true.<\/code><\/pre>\n<p><strong>3<\/strong>, <strong>4<\/strong> \u043f\u0443\u043d\u043a\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0442 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u043e\u0435 \u0431\u0443\u043b\u0435\u0430\u043d \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043c\u044b \u0436\u0435 \u0438\u0434\u0435\u043c \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c <strong>2<\/strong> \u043f\u0443\u043d\u043a\u0442. (\u043f\u043e\u043a\u0430 \u0447\u0442\u043e \u043d\u0430 <code>GetValue(expr)<\/code> \u043d\u0435 \u043d\u0430\u0434\u043e \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u043e\u043d\u043e \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u043e\u0441\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u044d\u0442\u043e \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430\u043c \u0441\u0430\u043c\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 &#8212; \u043d\u0430\u0448 \u043c\u0430\u0441\u0441\u0438\u0432). \u0412\u0438\u0434\u0438\u043c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044e <code>ToBoolean<\/code><\/p>\n<p><code>ToBoolean<\/code>:  (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-toboolean\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-toboolean<\/a>)<\/p>\n<pre><code>1. If argument is a Boolean, return argument. 2. If argument is one of undefined, null, +0?, -0?, NaN, 0\u2124, or the empty String, return false. 3. NOTE: This step is replaced in section B.3.6.1. 4. Return true.<\/code><\/pre>\n<p>\u0412\u043e <strong>2<\/strong> \u043f\u0443\u043d\u043a\u0442\u0435 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043a\u0430\u043a \u0440\u0430\u0437 \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u043c \u0432\u0441\u0435 \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0435 \u0432 \u043d\u0430\u0440\u043e\u0434\u0435 <code>falsy<\/code> \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041f\u0443\u043d\u043a\u0442 <strong>3<\/strong> \u043a \u043d\u0430\u0448\u0435\u0439 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438 \u043d\u0435 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f, \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c (\u043a\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c, \u0442\u0430\u043c \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e <code>Object<\/code> \u043c\u043e\u0436\u0435\u0442 \u0432\u0435\u0440\u043d\u0443\u0442\u044c <code>false<\/code>). \u0412\u043e\u0442 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u0437\u0434\u0435\u043b. (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-IsHTMLDDA-internal-slot\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-IsHTMLDDA-internal-slot<\/a>)<\/p>\n<p>\u041a\u0430\u043a \u043c\u044b \u0432\u0438\u0434\u0438\u043c, \u0435\u0441\u043b\u0438 \u043d\u0430\u0448\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 2, \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c <code>true<\/code>.  <\/p>\n<h4>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/h4>\n<p>3)\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 &#8212; \u0442\u0443\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e.<\/p>\n<h4>\u041d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e<\/h4>\n<p>4)\u041d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e. <\/p>\n<pre><code>EqualityExpression == RelationalExpression  1. Let lref be ? Evaluation of EqualityExpression. 2. Let lval be ? GetValue(lref). 3. Let rref be ? Evaluation of RelationalExpression. 4. Let rval be ? GetValue(rref). 5. Return ? IsLooselyEqual(rval, lval).<\/code><\/pre>\n<p>\u0422\u0443\u0442 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c\u0441\u044f \u043f\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0438 \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c. \u0410 \u0442\u043e\u0447\u043d\u0435\u0435 <strong>5<\/strong> \u043f\u0443\u043d\u043a\u0442 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <code>Return ? IsLooselyEqual(rval, lval)<\/code>.<\/p>\n<p><code>IsLooselyEqual (  x,  y  )<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-islooselyequal\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-islooselyequal<\/a>)<\/p>\n<pre><code>1. If Type(x) is Type(y), then   a. Return IsStrictlyEqual(x, y). 2. If x is null and y is undefined, return true. 3. If x is undefined and y is null, return true. 4. NOTE: This step is replaced in section B.3.6.2. 5. If x is a Number and y is a String, return ! IsLooselyEqual(x, ! ToNumber(y)). 6. If x is a String and y is a Number, return ! IsLooselyEqual(! ToNumber(x), y). 7. If x is a BigInt and y is a String, then   a. Let n be StringToBigInt(y).   b. If n is undefined, return false.   c. Return ! IsLooselyEqual(x, n). 8. If x is a String and y is a BigInt, return ! IsLooselyEqual(y, x). 9. If x is a Boolean, return ! IsLooselyEqual(! ToNumber(x), y). 10. If y is a Boolean, return ! IsLooselyEqual(x, ! ToNumber(y)). 11. If x is either a String, a Number, a BigInt, or a Symbol and y is an Object, return ! IsLooselyEqual(x, ? ToPrimitive(y)). 12. If x is an Object and y is either a String, a Number, a BigInt, or a Symbol, return ! IsLooselyEqual(? ToPrimitive(x), y). 13. If x is a BigInt and y is a Number, or if x is a Number and y is a BigInt, then   a. If x is not finite or y is not finite, return false.   b. If \u211d(x) = \u211d(y), return true; otherwise return false. 14. Return false.<\/code><\/pre>\n<p>\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u0441\u0435\u0433\u043e \u043c\u043d\u043e\u0433\u043e, \u043d\u043e \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0443\u043d\u043a\u0442\u044b.<\/p>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u043f\u0443\u043d\u043a\u0442 <strong>1<\/strong>. \u0415\u0441\u043b\u0438 \u0442\u0438\u043f\u044b \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0435, \u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 (<code>===<\/code>).<\/p>\n<p>\u0423 \u043d\u0430\u0441 <code>\u0445<\/code> &#8212; \u044d\u0442\u043e <code>true<\/code>, <code>y<\/code> &#8212; \u044d\u0442\u043e <code>[]<\/code>  <\/p>\n<p>\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u043d\u0430\u0448 \u0441\u043b\u0443\u0447\u0430\u0439, \u044d\u0442\u043e \u043f\u0443\u043d\u043a\u0442 <strong>9<\/strong>. \u0412\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u044d\u0442\u043e\u0442 \u0436\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043d\u0430\u0448 <code>x<\/code> \u043a \u0447\u0438\u0441\u043b\u0443. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>ToNumber<\/code> \u043c\u043e\u0436\u0435\u0442\u0435 \u0433\u043b\u044f\u043d\u0443\u0442\u044c \u0441\u0430\u043c\u0438(<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-tonumber\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-tonumber<\/a>), \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0432\u044b\u0434\u0435\u0440\u0436\u043a\u0443 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 <code>x<\/code>  &#8212; (<code>4. If argument is either null or false, return +0?.<\/code>) \u0422\u043e \u0435\u0441\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u0430\u043c \u0432\u0435\u0440\u043d\u0435\u0442 <code>0<\/code> \u0434\u043b\u044f <code>false<\/code>.<\/p>\n<p>\u0423 \u043d\u0430\u0441 <code>\u0445<\/code> &#8212; \u044d\u0442\u043e <code>0<\/code>, <code>y<\/code> &#8212; \u044d\u0442\u043e <code>[]<\/code>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0436\u0435 \u043d\u0430\u0448 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043d\u0430 \u043f\u0443\u043d\u043a\u0442\u0435 <strong>11<\/strong>. \u0412\u044b\u0437\u043e\u0432\u0435\u0442\u0441\u044f \u043e\u043f\u044f\u0442\u044c \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0438 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>ToPrimitive<\/code> \u043d\u0430 \u043d\u0430\u0448\u0435\u043c <code>y<\/code>.<br \/>\u0422\u0443\u0442 \u0441\u0442\u043e\u0438\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c.<\/p>\n<p><code>ToPrimitive<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-toprimitive\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-toprimitive<\/a>)<\/p>\n<pre><code>1. If input is an Object, then   a. Let exoticToPrim be ? GetMethod(input, @@toPrimitive).   b. If exoticToPrim is not undefined, then     i. If preferredType is not present, let hint be \"default\".     ii. Else if preferredType is string, let hint be \"string\".     iii. Else,       1. Assert: preferredType is number.       2. Let hint be \"number\".     iv. Let result be ? Call(exoticToPrim, input, \u00ab hint \u00bb).     v. If result is not an Object, return result.     vi. Throw a TypeError exception.   c. If preferredType is not present, let preferredType be number.   d. Return ? OrdinaryToPrimitive(input, preferredType). 2. Return input.<\/code><\/pre>\n<p>\u041f\u0443\u043d\u043a\u0442 <strong>a<\/strong> \u0432\u0435\u0440\u043d\u0435\u0442 \u043d\u0430\u043c <code>undefined<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0443 \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u0438 \u0435\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u0432) \u043d\u0435\u0442 \u043c\u0435\u0442\u043e\u0434\u0430 <code>Symbol.toPrimitive<\/code>. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u0443\u043d\u043a\u0442 <strong>b<\/strong> \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0417\u043d\u0430\u0447\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043f\u0443\u043d\u043a\u0442\u0443 <strong>c<\/strong> \u0438 \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e <code>preferredType<\/code> \u0441\u0442\u0430\u043b \u0440\u0430\u0432\u0435\u043d <code>number<\/code>, \u0434\u0430\u043b\u0435\u0435 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0435 \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u044d\u0442\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f. \u0418\u0434\u0435\u043c \u0432 \u043f\u0443\u043d\u043a\u0442 <strong>d<\/strong> \u0438 \u043f\u0440\u043e\u0432\u0430\u043b\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>OrdinaryToPrimitive(input, preferredType)<\/code><\/p>\n<p><code>OrdinaryToPrimitive ( O, hint )<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-ordinarytoprimitive\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-ordinarytoprimitive<\/a>)<\/p>\n<pre><code>1. If hint is string, then   a. Let methodNames be \u00ab \"toString\", \"valueOf\" \u00bb. 2. Else,   a. Let methodNames be \u00ab \"valueOf\", \"toString\" \u00bb. 3. For each element name of methodNames, do   a. Let method be ? Get(O, name).   b. If IsCallable(method) is true, then     i. Let result be ? Call(method, O).     ii. If result is not an Object, return result. 4. Throw a TypeError exception.<\/code><\/pre>\n<p>\u0412\u043a\u0440\u0430\u0442\u0446\u0435 \u0433\u043e\u0432\u043e\u0440\u044f, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u043d\u0430 <code>hint (preferredType)<\/code>, \u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0432\u044b\u0437\u043e\u0432\u044b <code>valueOf<\/code> \u0438 <code>toString<\/code> \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435. \u0422\u0430\u043a \u043a\u0430\u043a \u0443 \u043d\u0430\u0441 <code>hint<\/code> \u0440\u0430\u0432\u0435\u043d <code>\"number\"<\/code>, \u0442\u043e \u043f\u0435\u0440\u0432\u044b\u043c \u0432\u044b\u0437\u043e\u0432\u0435\u0442\u0441\u044f <code>valueOf<\/code>, \u0430 \u043f\u043e\u0442\u043e\u043c \u0443\u0436\u0435 <code>toString<\/code>. \u041a\u043e\u0433\u0434\u0430 \u043a\u0430\u043a\u043e\u0439 \u043b\u0438\u0431\u043e \u043c\u0435\u0442\u043e\u0434 \u0432\u0435\u0440\u043d\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u043c\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u043c, \u0442\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f, \u0438\u043d\u0430\u0447\u0435 \u0431\u0443\u0434\u0435\u0442 <code>TypeError<\/code>, \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0435 \u043d\u0430 \u0442\u0435, \u0447\u0442\u043e \u0431\u0443\u0434\u0443\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c.  <br \/>\u0422\u0430\u043a \u043a\u0430\u043a \u043c\u0435\u0442\u043e\u0434 <code>valueOf<\/code> \u0432 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043d\u0435\u0442, \u0442\u043e \u0438\u0434\u0435\u043c \u0432 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0442\u0430\u043c <code>valueOf<\/code> \u0434\u0435\u043b\u0430\u0435\u0442 &#8212; \u044d\u0442\u043e <code>Return ? ToObject(this value)<\/code> \u043e\u043d \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u0436\u0435 \u043c\u0430\u0441\u0441\u0438\u0432, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 <code>toString<\/code>. \u0410 \u0432\u043e\u0442 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0443\u0436\u0435 \u0435\u0441\u0442\u044c \u0432 <code>Array.prototype<\/code>, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0430 \u043d\u0435\u0433\u043e \u0432\u0437\u0433\u043b\u044f\u043d\u0435\u043c.<\/p>\n<p><code>Array.prototype.toString ( )<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-array.prototype.tostring\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-array.prototype.tostring<\/a>)<\/p>\n<pre><code>1. Let array be ? ToObject(this value). 2. Let func be ? Get(array, \"join\"). 3. If IsCallable(func) is false, set func to the intrinsic function %Object.prototype.toString%. 4. Return ? Call(func, array).<\/code><\/pre>\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c \u0433\u043e\u0432\u043e\u0440\u044f, \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 <code>join<\/code> \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435. \u0414\u0430\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u043f\u0440\u0438 \u043f\u0443\u0441\u0442\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435, \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0443\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-array.prototype.join\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-array.prototype.join<\/a>) (\u043f\u0443\u043d\u043a\u0442 <strong>5 <\/strong>\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <code>Array.prototype.join<\/code>).<\/p>\n<p>\u0423 \u043d\u0430\u0441 <code>\u0445<\/code> &#8212; \u044d\u0442\u043e <code>0<\/code>, <code>y<\/code> &#8212; \u044d\u0442\u043e <code>\"\"<\/code>  <\/p>\n<p>\u0412\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <strong>5<\/strong> \u043f\u0443\u043d\u043a\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <code>IsLooselyEqual<\/code> \u0442\u043e \u0435\u0441\u0442\u044c &#8212; <code>IsLooselyEqual(x, ! ToNumber(y))<\/code> \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u044d\u0442\u043e\u0442 \u0436\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c , \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u0448\u0430 <code>y<\/code> \u043a\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>ToNumber<\/code>. \u0412\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0435\u0442\u0441\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>StringToNumber<\/code> (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-stringtonumber\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-stringtonumber<\/a>), \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0435\u0442\u0441\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>StringNumericValue<\/code> (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-runtime-semantics-stringnumericvalue\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-runtime-semantics-stringnumericvalue<\/a>) \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0435\u0440\u043d\u0435\u0442 \u043d\u0430\u043c <code>0<\/code>, \u0438 \u043d\u0435\u0442, \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0430 \u043f\u0443\u0441\u0442\u0430\u044f, \u0441\u0442\u0440\u043e\u043a\u0430 \u0441 \u043f\u0440\u043e\u0431\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u043c\u0438 \u0442\u043e\u0436\u0435 \u0432\u0435\u0440\u043d\u0435\u0442 <code>0<\/code>, \u043d\u0435 \u043f\u0443\u0442\u0430\u0439\u0442\u0435 \u0441 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c <code>ToBoolean<\/code>. \u041c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>![] == [' \\n ']<\/code> \u0432\u0435\u0440\u043d\u0435\u0442 \u0432\u0430\u043c \u0432\u0441\u0435 \u0442\u043e\u0442 \u0436\u0435 <code>true<\/code>. \u042f \u043d\u0435 \u0441\u0442\u0430\u043b \u0440\u0430\u0441\u0441\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 \u043a \u0447\u0438\u0441\u043b\u0443, \u0447\u0442\u043e \u0431\u044b \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e \u0443\u0433\u043b\u0443\u0431\u043b\u044f\u0442\u044c\u0441\u044f, \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u043d\u0438\u0445 \u043b\u0438\u0447\u043d\u043e \u0438\u043b\u0438 \u043f\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043c\u043d\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u0432\u0435\u0440\u043d\u0435\u0442\u0441\u044f <code>0<\/code>.<\/p>\n<p>\u0423 \u043d\u0430\u0441 <code>\u0445<\/code> &#8212; \u044d\u0442\u043e <code>0<\/code>, <code>y<\/code> &#8212; \u044d\u0442\u043e <code>0<\/code> <\/p>\n<p>\u0412\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f <strong>1<\/strong> \u043f\u0443\u043d\u043a\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <code>IsLooselyEqual<\/code>. \u041a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c <code>IsStrictlyEqual<\/code>.<\/p>\n<p><code>IsStrictlyEqual<\/code>: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-isstrictlyequal\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-isstrictlyequal<\/a>)<\/p>\n<pre><code>1. If Type(x) is not Type(y), return false. 2. If x is a Number, then   a. Return Number::equal(x, y). 3. Return SameValueNonNumber(x, y).<\/code><\/pre>\n<p>\u041f\u0443\u043d\u043a\u0442 <strong>a<\/strong>:<\/p>\n<pre><code>1. If x is NaN, return false. 2. If y is NaN, return false. 3. If x is y, return true. 4. If x is +0? and y is -0?, return true. 5. If x is -0? and y is +0?, return true. 6. Return false.<\/code><\/pre>\n<p>\u0423 \u043d\u0430\u0441 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u043f\u0443\u043d\u043a\u0442 <strong>3<\/strong> \u0438 \u0432\u0435\u0440\u043d\u0435\u0442\u0441\u044f true.<\/p>\n<p>\u0412\u043e\u0442 \u0438 \u0432\u0435\u0441\u044c \u043f\u0443\u0442\u044c \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. \u0414\u0430, \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0448\u0435\u043b\u0441\u044f \u043f\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0438 \u0442\u0443\u043f\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0435\u0435 \u0448\u0430\u0433\u0438, \u0432\u044b \u0438 \u0441\u0430\u043c\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043c\u0443 \u0442\u043e \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0438 \u043f\u043e\u043b\u0435\u0437\u043d\u043e. \u0418 \u043d\u0435 \u0437\u0430\u0431\u044b\u0432\u0430\u0439\u0442\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c 1 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0438\u0441\u0442\u0438\u043d\u044b &#8212; \u044d\u0442\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f, \u043a\u0430\u043a \u0440\u0430\u0437 \u0442\u0430\u043a\u0438 \u043d\u0430 \u0435\u0435 \u043e\u0441\u043d\u043e\u0432\u0435 \u0438 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f (\u043f\u043e \u043a\u0440\u0430\u0439\u043d\u0435 \u043c\u0435\u0440\u0435 \u0434\u043e\u043b\u0436\u043d\u044b) \u0443\u0447\u0435\u0431\u043d\u0438\u043a\u0438 \u0438 \u043a\u043d\u0438\u0433\u0438, \u0430 \u0442\u0430\u043a \u0436\u0435 \u0440\u0430\u043d\u0442\u0430\u0439\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u0432\u0430\u0448 JS(\u0442\u0443\u0442 \u043d\u0430\u0434\u043e \u0443\u0442\u043e\u0447\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0440\u0430\u043d\u0442\u0430\u0439\u043c\u044b \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0436\u0435\u0441\u0442\u043a\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0442 \u0448\u0430\u0433\u0430\u043c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0438 \u043c\u043e\u0433\u0443\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043d\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u0434\u0440\u0443\u0433\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f).<\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p> <!----> <!----><\/div>\n<p> <!----> <!----><br \/> \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:\/\/habr.com\/ru\/articles\/748452\/\"> https:\/\/habr.com\/ru\/articles\/748452\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041d\u0435\u0434\u0430\u0432\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 &#171;\u0442\u0438\u043f\u043e\u0432\u044b\u0445&#187; \u0437\u0430\u0434\u0430\u0447 \u043d\u0430 \u0441\u043e\u0431\u0435\u0441\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u0445. \u041f\u0440\u043e\u0441\u0442\u043e \u0443\u0432\u0438\u0434\u0435\u043b \u0442\u0430\u043a\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u0438 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043f\u043e\u043d\u044f\u043b \u043a\u0430\u043a \u043e\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0410 \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u0443\u0441\u0442\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u0430\u0435\u0442 <code>0<\/code>.<\/p>\n<p><code>![] == []<\/code> <\/p>\n<p>\u0422\u0430\u043a\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u043d\u0435\u0442 <code>true<\/code>.<\/p>\n<p>\u0420\u0435\u0448\u0438\u043b \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0438 \u043f\u043e\u043d\u044f\u0442\u044c \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0448\u0430\u0433 \u0437\u0430 \u0448\u0430\u0433\u043e\u043c.<\/p>\n<h2>TL;DR<\/h2>\n<ol>\n<li>\n<p><code>![]<\/code> &#8212; \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442<code>false<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u0431\u044a\u0435\u043a\u0442 \u0432 Boolean \u0432\u0441\u0435\u0433\u0434\u0430 <code>true<\/code> \u0438 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c <code>true<\/code> &#8212; \u044d\u0442\u043e <code>false<\/code><\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0438 \u0433\u0434\u0435 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0438\u043c\u0435\u044e\u0442 \u0440\u0430\u0437\u043d\u044b\u0439 \u0442\u0438\u043f, \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u043a \u0447\u0438\u0441\u043b\u0443<\/p>\n<\/li>\n<li>\n<p><code>false<\/code> \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0447\u0438\u0441\u043b\u043e <code>0<\/code><\/p>\n<\/li>\n<li>\n<p>\u041f\u0443\u0441\u0442\u043e\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0447\u0438\u0441\u043b\u043e <code>0<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043a \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u0443 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0437\u0432\u0430\u043d \u0441\u043d\u0430\u0447\u0430\u043b\u0430 <code>valueOf<\/code>, \u043f\u043e\u0442\u043e\u043c <code>toString<\/code> (\u0438\u043d\u043e\u0433\u0434\u0430 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u043d\u044b\u0439) \u0438 \u0432\u043e\u0437\u044c\u043c\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0437\u043e\u0432\u0430. \u0423 \u043d\u0430\u0441 \u0432\u043e\u0437\u044c\u043c\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0437\u043e\u0432\u0430 <code>toString<\/code>, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432 (<code>valueOf<\/code> \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u0435, \u0432\u0435\u0440\u043d\u0435\u0442 \u0442\u043e\u0442 \u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442). <code>toString<\/code> \u043d\u0430\u043c \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u044b\u0437\u043e\u0432 <code>toString<\/code> \u043d\u0430 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0435\u0433\u043e \u043c\u0435\u0442\u043e\u0434 <code>join<\/code>, \u0430 \u043c\u0435\u0442\u043e\u0434 <code>join<\/code> \u0441 \u043f\u0443\u0441\u0442\u044b\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0443\u0441\u0442\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 <code>''<\/code>, \u0430 \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 <code>''<\/code> \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432 <code>0<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 <code>0<\/code> \u0438 <code>0<\/code> \u0434\u0430\u0434\u0443\u0442 <code>true<\/code><\/p>\n<\/li>\n<\/ol>\n<h2>\u041f\u043e\u0434\u0441\u0447\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439<\/h2>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0443 \u043d\u0430\u0441 \u0438\u043c\u0435\u0435\u0442\u0441\u044f <code>4<\/code> \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f (Expressions).<\/p>\n<p>\u041f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 13 (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-ecmascript-language-expressions\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-ecmascript-language-expressions<\/a>). \u0422\u043e\u043b\u044c\u043a\u043e \u0442\u0430\u043c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043a\u0440\u0430\u0441\u0438\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0447\u043a\u0438. \u041f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0438\u0434\u0442\u0438 \u043f\u043e \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430\u043c \u0438 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0447\u0442\u043e \u0432 \u043a\u0430\u043a\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f.<\/p>\n<pre><code>![] == []  ^^ -> 1  ![] == [] ^^^ -> 2  ![] == []        ^^ -> 3  ![] == [] ^^^^^^^^^^ -> 4<\/code><\/pre>\n<ol>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/p>\n<\/li>\n<li>\n<p>\u0412\u044b\u0437\u043e\u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u041d\u0415 c \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/p>\n<\/li>\n<li>\n<p>\u041d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e<\/p>\n<\/li>\n<\/ol>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e 4 \u043f\u0443\u043d\u043a\u0442\u0430.<\/p>\n<p>\u0412\u0438\u0434\u0438\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c: (<code>[?In, ?Yield, ?Await]<\/code> &#8212; \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u043b, \u0447\u0442\u043e \u0431\u044b \u043d\u0435 \u043f\u0443\u0442\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434 \u0433\u043b\u0430\u0437\u0430\u043c\u0438, \u0434\u0430\u043d\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430\u0441 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442)<\/p>\n<pre><code>EqualityExpression : RelationalExpression EqualityExpression == RelationalExpression EqualityExpression != RelationalExpression EqualityExpression === RelationalExpression EqualityExpression !== RelationalExpression<\/code><\/pre>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0447\u0442\u043e <code>EqualityExpression<\/code> \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u0430 \u0447\u0435\u043c\u0443 \u0442\u043e \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430.<br \/>\u0412\u043e\u0437\u044c\u043c\u0435\u043c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>0 == 0 == 0<\/code><\/p>\n<p>\u0415\u0433\u043e \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u0430\u043a:<\/p>\n<pre><code>EqualityExpression == RelationalExpression ^^^^^^^^^^^^^^^^^^ -> EqualityExpression == RelationalExpression EqualityExpression == RelationalExpression == RelationalExpression ^^^^^^^^^^^^^^^^^^ -> RelationalExpression RelationalExpression == RelationalExpression == RelationalExpression<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043d\u0435 \u0441\u0442\u0430\u043b\u0438 \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c <code>RelationalExpression<\/code> \u0434\u0430\u043b\u0435\u0435 \u043f\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438, \u043d\u043e \u043d\u0438\u0436\u0435 \u043c\u044b \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c.<\/p>\n<p>\u0412\u0441\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u044f\u0442\u044c \u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0443\u0437\u0435\u043b &#8212; \u044d\u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u0441\u0430\u043c\u044b\u043c \u043d\u0438\u0437\u043a\u0438\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c, \u0430 \u0435\u0433\u043e \u043b\u0438\u0441\u0442\u044c\u044f &#8212; \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u0438\u043c \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043e\u043c.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u0441\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u0441\u044f \u043f\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0439. <\/p>\n<p><code>RelationalExpression<\/code> :<\/p>\n<pre><code>RelationalExpression : ShiftExpression RelationalExpression &lt; ShiftExpression RelationalExpression > ShiftExpression RelationalExpression &lt;= ShiftExpression RelationalExpression >= ShiftExpression RelationalExpression instanceof ShiftExpression RelationalExpression in ShiftExpression PrivateIdentifier in ShiftExpression<\/code><\/pre>\n<p>\u0422\u043e \u0435\u0441\u0442\u044c \u0443 \u043d\u0430\u0441 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u043d\u0430\u0431\u043e\u0440 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435 \u0432\u043d\u0438\u0437, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0439\u0434\u0435\u043c \u0434\u043e \u0441\u0430\u043c\u044b\u0445 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>RelationalExpression<\/code> \u043c\u043e\u0436\u0435\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>RelationalExpression &lt; ShiftExpression<\/code>. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0432\u0435\u0440\u0445\u043d\u0438\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0432\u0435\u0441\u044c \u043d\u0430\u0431\u043e\u0440 \u043d\u0438\u0436\u043d\u0438\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0437\u044f\u0432 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <code>RelationalExpression<\/code> \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u044d\u0442\u0438\u043c \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u043d\u0435\u0433\u043e, \u043e\u0442 <code>UpdateExpression **  ExponentiationExpression<\/code> \u0434\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e <code>Literal<\/code>, \u043d\u043e \u043d\u0435 \u0432\u044b\u0448\u0435 \u0446\u0435\u043f\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u043e\u043d\u043e \u0443\u0436\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u044f\u0432\u043b\u044f\u0442\u044c\u0441\u044f <code>EqualityExpression<\/code>, \u0430 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u0431\u0443\u0434\u0435\u0442 \u0435\u0433\u043e \u043f\u043e\u0442\u043e\u043c\u043a\u043e\u043c.<\/p>\n<p>\u0412\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0441 \u043d\u0430\u0448\u0438\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430\u043c\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<\/p>\n<ol>\n<li>\n<p>EqualityExpression<\/p>\n<\/li>\n<li>\n<p>RelationalExpression<\/p>\n<\/li>\n<li>\n<p>ShiftExpression<\/p>\n<\/li>\n<li>\n<p>AdditiveExpression<\/p>\n<\/li>\n<li>\n<p>MultiplicativeExpression<\/p>\n<\/li>\n<li>\n<p>ExponentiationExpression<\/p>\n<\/li>\n<li>\n<p>UnaryExpression<\/p>\n<\/li>\n<li>\n<p>UpdateExpression<\/p>\n<\/li>\n<li>\n<p>LeftHandSideExpression<\/p>\n<\/li>\n<li>\n<p>NewExpression<\/p>\n<\/li>\n<li>\n<p>MemberExpression<\/p>\n<\/li>\n<li>\n<p>PrimaryExpression<\/p>\n<\/li>\n<li>\n<p>Literal<\/p>\n<\/li>\n<\/ol>\n<p>\u0412\u0441\u0435. \u0414\u0430\u043b\u0435\u0435 \u0443\u0436\u0435 \u0438\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043b\u0438\u0442\u0435\u0440\u0430\u043b\u0430:<\/p>\n<ol>\n<li>\n<p>NumericLiteral<\/p>\n<\/li>\n<li>\n<p>DecimalLiteral<\/p>\n<\/li>\n<li>\n<p>DecimalIntegerLiteral<\/p>\n<\/li>\n<li>\n<p>0<\/p>\n<\/li>\n<\/ol>\n<p>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u043d\u0430\u0448 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u043d\u0430 \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0438\u0436\u0435 \u043f\u043e \u0434\u0435\u0440\u0435\u0432\u0443 (\u0438\u0437 \u043a\u0430\u043a\u0438\u0445 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c)<\/p>\n<p>\u0412 \u043a\u043e\u043d\u0446\u0435 \u043a\u043e\u043d\u0446\u043e\u0432 \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a: <\/p>\n<pre><code>1) EqualityExpression == RelationalExpression 2) (EqualityExpression == RelationalExpression) == RelationalExpression 3) ((RelationalExpression) == RelationalExpression) == RelationalExpression \u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c RelationalExpression \u043d\u0430 \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0438\u0436\u0435 \u043f\u043e \u0434\u0435\u0440\u0435\u0432\u0443, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0434\u043e\u0439\u0434\u0435\u043c \u0434\u043e \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. ... \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435, \u0434\u043e: Literal == Literal == Literal   \u0447\u0442\u043e \u0441\u0442\u0430\u043d\u0435\u0442: 0 == 0 == 0<\/code><\/pre>\n<p>\u0427\u0442\u043e \u0431\u044b \u0437\u0430\u043a\u0440\u0435\u043f\u0438\u0442\u044c, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430\u0447\u0430\u043b\u043e \u0446\u0435\u043f\u043e\u0447\u043a\u0438 <code>1 + 1 == 0 == 0<\/code>.<\/p>\n<p>\u0411\u0443\u0434\u0443 \u0437\u0430\u043c\u0435\u043d\u044f\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0435\u0431\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 <code>1 + 1<\/code><\/p>\n<pre><code>1) EqualityExpression == RelationalExpression 2) (EqualityExpression == RelationalExpression) == RelationalExpression 3) ((RelationalExpression) == RelationalExpression) == RelationalExpression 4) (((ShiftExpression)) == RelationalExpression) == RelationalExpression 5) ((((AdditiveExpression))) == RelationalExpression) == RelationalExpression 6) (((((AdditiveExpression + MultiplicativeExpression)))) == RelationalExpression) == RelationalExpression ... n) (((((Literal + Literal)))) == Literal) == Literal ----- (((((1 + 1)))) == 0) == 0<\/code><\/pre>\n<p>\u0415\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u0430\u043c\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c\u0441\u044f \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0430\u0447\u0430\u043b\u0430, \u0432\u043e\u0442 \u0432\u0430\u043c \u0441\u0430\u043c\u044b\u0439 \u043c\u0435\u043d\u0435\u0435 \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440: (<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-comma-operator\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-comma-operator<\/a>)<\/p>\n<h2>\u041f\u043e\u0440\u044f\u0434\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0439<\/h2>\n<p>\u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043a\u0430\u043a \u0431\u0443\u0434\u0442\u043e \u043c\u044b <strong>\u043d\u0430\u0447\u0438\u043d\u0430\u0435\u043c<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u043e\u0433\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430. \u0422\u0430\u043a \u043e\u043d\u043e \u0438 \u0435\u0441\u0442\u044c! \u041d\u043e \u043a\u0430\u043a \u0442\u0430\u043a? <\/p>\n<p>\u0412\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e. \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432, \u0443 \u0432\u0430\u0441 \u0438\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043b\u0435\u0432\u044b\u0445 \u0438 \u043f\u0440\u0430\u0432\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432. \u0418 \u043f\u043e\u043a\u0430 \u043e\u043d\u0438 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043b\u0438\u0441\u044c, \u043d\u0430\u0448\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 <strong>\u0436\u0434\u0435\u0442<\/strong>(\u0435\u0441\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c\u0441\u044f) \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041f\u0440\u043e\u0441\u0442\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 &#8212; \u0441\u0430\u043c\u044b\u0439 \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u0435\u0440\u0432\u044b\u043c, \u043d\u043e \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0441\u0430\u043c\u044b\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c. \u041c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u043e \u043a\u0430\u043a \u0441\u0442\u0435\u043a \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439, \u0433\u0434\u0435 \u0432 \u0441\u0430\u043c\u043e\u043c \u0432\u0435\u0440\u0445\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0441\u044f \u0441\u0430\u043c\u0430\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f, \u0430 \u0432 \u0441\u0430\u043c\u043e\u043c \u043d\u0438\u0437\u0443 &#8212; \u0441\u0430\u043c\u0430\u044f \u043d\u0438\u0437\u043a\u043e \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f.<\/p>\n<p>\u0412\u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438\u0437\u00a0\u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438:(<a href=\"https:\/\/262.ecma-international.org\/14.0\/#sec-equality-operators-runtime-semantics-evaluation\" rel=\"noopener noreferrer nofollow\">https:\/\/262.ecma-international.org\/14.0\/#sec-equality-operators-runtime-semantics-evaluation<\/a>)<\/p>\n<pre><code>EqualityExpression == RelationalExpression  1. Let lref be ? Evaluation of EqualityExpression. 2. Let lval be ? GetValue(lref). 3. Let rref be ? Evaluation of RelationalExpression. 4. Let rval be ? GetValue(rref). 5. Return ? IsLooselyEqual(rval, lval).<\/code><\/pre>\n<p>\u0412\u0438\u0434\u043d\u043e \u0447\u0442\u043e \u043d\u0430 <code>1<\/code> \u0448\u0430\u0433\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f <code>Evaluation<\/code> \u043d\u0430\u0448\u0435\u0433\u043e \u043b\u0435\u0432\u043e\u0433\u043e \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430(<code>EqualityExpression<\/code>), \u0430 \u043d\u0430 <code>3<\/code> \u0448\u0430\u0433\u0435 \u043f\u0440\u0430\u0432\u043e\u0433\u043e(<code>RelationalExpression<\/code>). \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u043a\u0430 \u043d\u0430\u0448\u0438 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u0441\u044f, \u0448\u0430\u0433 <code>5<\/code> \u043d\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442. \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438\u0434\u0435\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0432\u0441\u0435 \u043b\u0435\u0432\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b (\u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u044b), \u043f\u043e\u0442\u043e\u043c \u043f\u0440\u0430\u0432\u044b\u0435.<\/p>\n<p>\u041a\u0430\u043a \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0438 <code>1 + 2 * 3 == 4<\/code> \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u044b <strong>\u0437\u0430\u043a\u043e\u043d\u0447\u0430\u0442<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443  &#8212;  \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0442\u043e\u043c \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0438 \u043f\u043e\u0442\u043e\u043c \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435, \u043d\u043e <strong>\u043d\u0430\u0447\u043d\u0443\u0442<\/strong> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u0441\u044f \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 &#8212; \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435, \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435. \u0410 \u0442\u043e\u0447\u043d\u0435\u0435:<\/p>\n<pre><code>\u250c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 == \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u2502   \u2502   \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 1 \u2502   \u2502   \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 1 \u2502   \u2502   \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f * \u2502   \u2502   \u2502       \u2502   \u251c\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u2502   \u2502   \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 2 \u2502   \u2502   \u2502       \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 2 \u2502   \u2502   \u2502       \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502   \u2502   \u2502       \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 3 \u2502   \u2502   \u2502       \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 3 \u2502   \u2502   \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 6 \u2502   \u2502   \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 7 \u2502   \u2514\u2500\u2500 \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u2502       \u251c\u2500\u2500 \u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430 4 \u2502       \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0447\u0438\u0441\u043b\u043e 4 \u2514\u2500\u2500 \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u043e\u0441\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043d\u0435\u0441\u0442\u0440\u043e\u0433\u043e\u0433\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430, \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 false<\/code><\/pre>\n<ul>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f &#8212; <code>(1 + 2 * 3)<\/code> \u0438 <code>(4)<\/code><\/p>\n<\/li>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u044f &#8212; <code>(1)<\/code> \u0438 <code>(2 * 3)<\/code><\/p>\n<\/li>\n<li>\n<p>\u041e\u043f\u0435\u0440\u0430\u043d\u0434\u044b \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f &#8212; <code>(2)<\/code> \u0438 <code>(3)<\/code><\/p>\n<\/li>\n<\/ul>\n<p>\u0418 \u044d\u0442\u043e \u043b\u043e\u0433\u0438\u0447\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0441\u0435\u0440\u0430. \u0412\u044b \u0441\u0442\u0440\u043e\u0438\u0442\u0435 \u0434\u0435\u0440\u0435\u0432\u043e. \u0413\u0434\u0435 \u043d\u0430 \u0441\u0430\u043c\u043e\u0439 \u0432\u0435\u0440\u0445\u0443\u0448\u043a\u0435 \u0431\u0443\u0434\u0435\u0442 \u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u0441 \u0435\u0433\u043e \u043b\u0438\u0441\u0442\u044c\u044f\u043c\u0438 &#8212; \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u0430\u043c\u0438, \u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f \u0441\u0430\u043c\u044b\u043c \u043f\u0435\u0440\u0432\u044b\u043c(\u0435\u0441\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u0442\u0430\u043a \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c\u0441\u044f).<\/p>\n<pre><code>        1 + 2 * 3 == 4                   \/ \\                  \/   \\                 \/     4            1 + 2 * 3                \/ \\                   \/   \\             1     \\                  2 * 3                   \/ \\                  \/   \\                 2     3<\/code><\/pre>\n<p>\u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435\u0435 \u0431\u044b\u043b\u043e \u0431\u044b \u044d\u0442\u043e \u0434\u0435\u0440\u0435\u0432\u043e \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0436\u0435 \u0442\u0430\u043a:<\/p>\n<pre><code>                  ==                   \/ \\                  \/   \\                 \/     4                +                \/ \\                   \/   \\             1     \\                    *                   \/ \\                  \/   \\                 2     3<\/code><\/pre>\n<p>\u041a\u0430\u043a \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435, \u0437\u0434\u0435\u0441\u044c 7 \u044d\u043a\u0441\u043f\u0440\u0435\u0448\u0435\u043d\u043e\u0432 (\u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 expression). \u0412\u043e\u043e\u0431\u0449\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0442\u0435 \u0436\u0435 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0435 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0435\u0440\u0435\u0432\u044c\u044f (AST).<\/p>\n<h2>\u0420\u0430\u0437\u0431\u043e\u0440 \u043f\u0440\u0438\u043c\u0435\u0440\u0430<\/h2>\n<p>\u0412\u0435\u0440\u043d\u0435\u043c\u0441\u044f \u043a \u043d\u0430\u0448\u0435\u043c\u0443 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u0443.<\/p>\n<pre><code>       ![] == []           \/ \\          \/   \\        ![]    \\          \\    []          []  <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u043e\u0436\u0435 \u0435\u0433\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u043c \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0438\u0434\u0435<\/p>\n<pre><code>           =           \/ \\          \/   \\         !     \\          \\    []          []  <\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e \u0448\u0430\u0433\u0430\u043c \u043f\u043e\u043b\u0443\u0447\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430\u0448\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u043d\u0434\u043e\u0432.<\/p>\n<h4>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/h4>\n<p>1)\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 &#8212; \u0442\u0443\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e.<\/p>\n<h4>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u041d\u0415 ( ! )<\/h4>\n<p>2)\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u041d\u0415 \u043a \u043c\u0430\u0441\u0441\u0438\u0432\u0443. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043c. \u041f\u043e\u043d\u044f\u0442\u043d\u043e\u0435 \u0434\u0435\u043b\u043e \u0432\u0441\u0435 \u0437\u043d\u0430\u044e \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u043d\u0435\u0442 <code>false<\/code>, \u043d\u043e \u043f\u043e\u0447\u0435\u043c\u0443? \u041e\u0442\u0432\u0435\u0442 \u043a\u0430\u043a \u0438<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-350360","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/350360","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=350360"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/350360\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=350360"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=350360"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=350360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}