10 рд╕рд╛рдВрддреНрд╡рдирд╛ рдПрдХ рдкреНрд░реЛ рдХреА рддрд░рд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдмрд╣рд╕ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рдЫрд╡рд┐

рдЙрдиреНрд╣реЛрдВрдиреЗ рдХрдВрд╕реЛрд▓ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдкрд░ рдЕрдорд┐рдд рд╕реЛрд▓рдВрдХрд╛ рдХреЗ рдПрдХ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ ред рд▓реЗрдЦрдХ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпреЗ рдХрдорд╛рдВрдб рдмрдЧреНрд╕ рдХреА рдЦреЛрдЬ рдХрд░рддреЗ рд╕рдордп рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рдХрд╛рдлреА рд╡реГрджреНрдзрд┐ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗ рдФрд░ рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рдПрдВрдЧреЗред

рдЖрдЗрдП рдЙрди рдЖрджреЗрд╢реЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдЬреАрд╡рди рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛рддреЗ рд╣реИрдВ: "рд╣реИрдмрд░" рдХреЗ рд╕рднреА рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП - "рд╣реИрдмрд░" рдкреНрд░реЛрдореЛ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдХреЛрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рддреЗ рд╕рдордп 10,000 рд░реВрдмрд▓ рдХреА рдЫреВрдЯред

рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реИ: рдлреНрд░рдВрдЯреЗрдВрдб рдбреЗрд╡рд▓рдкрд░ рдкреЗрд╢реЗ рдСрдирд▓рд╛рдЗрди рдХреЛрд░реНрд╕ред

рдХрдВрд╕реЛрд▓.рдЧреНрд░реБрдк ('рдирд╛рдо') рдФрд░ рдХрдВрд╕реЛрд▓.рдЧреНрд░реБрдкрдЗрдВрдб ('рдирд╛рдо') рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдореВрд╣рд┐рдВрдЧ рд▓реЙрдЧ


рдХрдВрд╕реЛрд▓ рдХрдВрд╕реЛрд▓ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рдореВрд╣ ('рдирд╛рдо') рдФрд░ рдХрдВрд╕реЛрд▓.рдЧреНрд░реБрдкрдПрдВрдб ('рдирд╛рдо') рдПрдХ рд╕рд┐рдВрдЧрд▓ рдбреНрд░реЙрдк-рдбрд╛рдЙрди рдЯреНрд░реА рдореЗрдВ рдХрдИ рдЕрд╕рдорд╛рди рд▓реЙрдЧ рдХрд╛ рд╕рдореВрд╣ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐рд╕реА рднреА рд▓реЙрдЧ рдХреЛ рддреНрд╡рд░рд┐рдд рдПрдХреНрд╕реЗрд╕ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпреЗ рдЖрджреЗрд╢ рдЖрдкрдХреЛ рдмрд╛рдж рдореЗрдВ рд╕рдореВрд╣реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдиреЗрд╕реНрдЯреЗрдб рдкреЗрдбрд╝ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред

рдХреБрд▓ рддреАрди рддрд░реАрдХреЗ рд╣реИрдВред рдкрд╣рд▓рд╛, рдХрдВрд╕реЛрд▓.рдЧреНрд░реБрдк ('рдирд╛рдо тАЩ), рд╕рдореВрд╣рди рдХреА рд╢реБрд░реБрдЖрдд рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░рд╛, рдХрдВрд╕реЛрд▓.рдЧреНрд░реБрдкрдПрдВрдб () рдирд╛рдотАЩ), рдЕрдВрдд рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХрдВрд╕реЛрд▓.рдЧреНрд░рд╛рдлрдХреЙрд▓реИрдкреНрд╕ () рд╕рдореВрд╣ рдХреЛ рдЯрдХрд░рд╛рдП рд╣реБрдП рдкреЗрдбрд╝ рдореЛрдб рдореЗрдВ рдмрдирд╛рддрд╛ рд╣реИред



рдЯреНрд░реЗрд╕ рдХрдВрд╕реЛрд▓.рдЯреНрд░реЗрд╕ ()


рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдлрдВрдХреНрд╢рди рдХреЙрд▓ рдХреА рдкреВрд░реА рд╕реНрдЯреИрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХрдВрд╕реЛрд▓.рдЯреНрд░реЗрд╕ () рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

function foo() { function bar() { console.trace(); } bar(); } foo(); 

рдФрд░ рдирддреАрдЬрд╛ред



Comfort.count рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ ()


рдХрдВрд╕реЛрд▓.рдХрд╛рдЙрдВрдЯрд░ () рдХрдорд╛рдВрдб рдЖрдкрдХреЛ рдЙрд╕ рд╕рдордп рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдпрд╣ рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛ред рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ: рдпрджрд┐ рдЖрдк рдЯреАрдо рдХреЛ рджреА рдЧрдИ рд▓реЙрдЧ рд▓рд╛рдЗрди рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдЙрд▓рдЯреА рдЧрд┐рдирддреА рдПрдХ рдирдП рдкрд░ рдЬрд╛рдПрдЧреАред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЖрдк рдХрдВрд╕реЛрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдЙрдВрдЯрд░ рд░реАрд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ редountReset () рдХрдорд╛рдВрдбред



рдХрдВрд╕реЛрд▓.рдЯрд╛рдЗрдо () рдФрд░ рдХрдВрд╕реЛрд▓.рдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдорд░ рдХреЛ рд╢реБрд░реВ рдХрд░рдирд╛ рдФрд░ рд░реЛрдХрдирд╛ ()


рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИред рджреЛрдиреЛрдВ рдХрдорд╛рдВрдб рдЯрд╛рдЗрдорд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЗрд╕реЗ рд╢реБрд░реВ рдпрд╛ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдЖрдорддреМрд░ рдкрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрдорд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ - рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рдХрдорд╛рдВрдб рдХреЛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред



рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдФрд░ рд╕рд╛рдВрддреНрд╡рдирд╛ред


рдХрдВрд╕реЛрд▓ .assert () рдлрд╝рдВрдХреНрд╢рди рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рднреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЭреВрдареА рд╣реИред рдкрд░рд┐рдгрд╛рдо рд▓реЙрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдпрджрд┐ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдВрд╕реЛрд▓ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдПрдХ рдЯреАрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

 function greaterThan(a,b) { console.assert(a > b, {"message":"a is not greater than b","a":a,"b":b}); } greaterThan(2,1); 

рдкрд░рд┐рдгрд╛рдо



рдХрдВрд╕реЛрд▓.рдкреНрд░реЛрдлрд╛рдЗрд▓ () рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ


рдХрдВрд╕реЛрд▓.рдкреНрд░реЛрдлрд╛рдЗрд▓ () рдХрдорд╛рдВрдб рдЖрдкрдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИрдВрдбрд╡рд░реНрдХ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЯреАрдо рдЦреБрдж рд╕рдм рдХреБрдЫ рдХрд░рддреА рд╣реИред

 function thisNeedsToBeProfiled() { console.profile("thisNeedsToBeProfiled()"); // ,     console.profileEnd(); } 

рд╕рдордпрд░реЗрдЦрд╛ рдФрд░ рд╕рд╛рдВрддреНрд╡рдирд╛ред рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк ()


рдПрдХ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛, рдХрдВрд╕реЛрд▓.рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк (), рдХреБрдЫ рдШрдЯрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рдХреНрд╖рдг рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдпрд╛ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рд╕рдордп рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рдпрд╣рд╛рдВ рдХрдИ рдорд╛рдорд▓реЗ рд╣реИрдВред

рдХрдВрд╕реЛрд▓.рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк ('рдХрд╕реНрдЯрдо рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк!');

рдХрдВрд╕реЛрд▓ рдХрдВрд╕реЛрд▓ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ред рдХреНрд▓рд┐рдпрд░ ()


рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИред рдпрджрд┐ рдЖрдк рдХрдВрд╕реЛрд▓ рдХреЛ рдЦрд╛рд▓реА рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХрдВрд╕реЛрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдХреНрд▓рд┐рдпрд░ ()ред

рд╕рдВрдкрддреНрддрд┐ рд╕рд╛рдВрддреНрд╡рдирд╛


рдЖрдкрдХреЛ рдмрдлрд░ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдкреНрд░рджрд░реНрд╢рди рдЖрдБрдХрдбрд╝реЗ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдордпрд╕реАрдорд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИред



рдХрдВрд╕реЛрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рд╛рде рдЯреЗрдмрд▓ рдЖрдЙрдЯрдкреБрдЯ ()


рдХрдВрд╕реЛрд▓рдЯреЗрдмрд▓ () рдлрд╝рдВрдХреНрд╢рди рдЖрдкрдХреЛ рдПрдХ рдЫреЛрдЯреА рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдбреЗрд╡рд▓рдкрд░ рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕рд░рдгреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред



рджрд░рдЕрд╕рд▓, рдЖрдЬ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЬреАрд╡рди рд╣реИрдХ рд╣реИ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ - рд╣рдо рдЖрдкрдХреЗ рдЖрднрд╛рд░реА рд╣реЛрдВрдЧреЗред

рд╕реНрдХрд┐рд▓рдмреЙрдХреНрд╕ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ:

Source: https://habr.com/ru/post/hi440300/


All Articles