рдЪреАрдиреА - рдореАрдард╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ

рд╕реБрдЧрд░ рдХреНрдпрд╛ рд╣реИ?
рдпрд╣ рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬреЛ рдмрд┐рд▓реНрдЯ-рдЗрди рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЬреЛ:

рдЙрдкрдпреЛрдЧ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд▓реЗрдЦрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рд╣рд╡рд╛рд▓рд╛ рджреЗрддрд╛ рд╣реИ:
getLatestTweets( function (t) {
var users = t.map( 'user' ).unique();
var total = users.sum( 'statuses_count' ).format();
var top = users.max( 'followers_count' ).first();
var count = top.followers_count.format();
var since = Date.create(top.created_at);
return users.length + ' users with a total of ' + total + ' tweets.\n' +
top.screen_name + ' is the top with ' + count + ' followers\n' +
'and started tweeting ' + since.relative() + '.' ;
});


рдпрд╣ рдареАрдХ рдирд╣реАрдВ рд╣реИ, рдХреЛрдб рд▓рдЧрднрдЧ рдЕрдВрдЧреНрд░реЗрдЬреА рдкрд╛рда рдХреА рддрд░рд╣ рдкрдврд╝рддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЕрдзреАрд░ рдЗрд╕ рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдмрд╛рдХреА рдХреЛ рдХрдЯ рдХреЗ рдиреАрдЪреЗ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдорд┐рд▓реЗрдЧрд╛ред

рд╕рд░рдгрд┐рдпреЛрдВ


рд╢реБрдЧрд░ рдорд╛рдирдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ 1.6 рд╡рд┐рдзрд┐рдпрд╛рдБ, рдЬреИрд╕реЗ рдХрд┐ indexOf , forEach , reduce , рдЖрджрд┐ред рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рддрд░реНрдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдорд╛рдирдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ: рдиреЗрд╕реНрдЯреЗрдб рдСрдмреНрдЬреЗрдХреНрдЯ, рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐, рддрд╛рд░ред рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ, рддреЛ рджреЗрд╢реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
[ 'a' , 'b' , 'c' ].indexOf( 'c' ); > 2
[{ foo: 'bar' }, { moo: 'car' }].indexOf({ moo: 'car' }); > 1
[ 'rocksteady' , 'and' , 'bebop' ].map( 'length' ); > [10,3,5]
[ 'rocksteady' , 'and' , 'bebop' ].sortBy( 'length' ); > [ "and" , "bebop" , "rocksteady" ]
[ 'rocksteady' , 'and' , 'bebop' ].findAll(/o/); > [ "rocksteady" , "bebop" ]
[ 'rocksteady' , 'and' , 'bebop' ].first(1); > [ "rocksteady" ]
[ 'rocksteady' , 'and' , 'bebop' ].from(1); > [ "and" , "bebop" ]
[ 'three' , 'two' , 'one' ].groupBy( 'length' ); > { "5" :[ "three" ], "3" :[ "two" , "one" ]}
[1,65,2,77,34].average(); > 35.8
[1,2].add([2,3]); > [1,2,2,3]
[1,2].subtract([2,3]); > [1]
[1,2].intersect([2,3]); > [2]
[1,2].union([2,3]); > [1,2,3]


рдкрдВрдХреНрддрд┐рдпрд╛рдВ


рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рд╛рде split рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЪреАрдиреА рдХреНрд░реЙрд╕-рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЕрдВрддрд░ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдпреВрдирд┐рдХреЛрдб рдФрд░ рдЪреАрдиреА, рдЬрд╛рдкрд╛рдиреА, рдЧреНрд░реАрдХ, рд╣рд┐рдмреНрд░реВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рддрд░реАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рднрд╛рд╖рд╛ рд╕рдорд░реНрдерди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╛рда рдХреЗ рд╕рд╛рде рд▓рдЪреАрд▓реЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП each , words , lines , paragraphs рдЬреИрд╕реЗ рддрд░реАрдХреЗ рдЬреЛрдбрд╝реЗ рдЧрдП рд╣реИрдВред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
'abcdefgh' .split(/[bdf]/); > [ "a" , "c" , "e" , "gh" ]
'уБУуВУуБлуБбуБп' .hasHiragana(); > true
'эЩШьШБ эХйыЛИыЛд' .hasHangul(); > true
' !' .hasCyrillic(); > true
'welcome' .pad(1, ' ' ).pad(3, '-' ); > "--- welcome ---"
'hut!' .repeat(3); > "hut!hut!hut!"
'off with her head!' .words(); > [ "off" , "with" , "her" , "head!" ]
'off with her head!' .each(/he.+?\b/g); > [ "her" , "head" ]
'off with her head!' .startsWith(/[az]ff/); > true
'off with her head!' .first(3); > "off"
'off with her head!' .from(3); > " with her head!"


рд╕рдВрдЦреНрдпрд╛


Math рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдореВрд▓ рддрд░реАрдХреЗ рд╢реЙрд░реНрдЯрдХрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рдЕрддрд┐рд░рд┐рдХреНрдд рдмрдиреНрд╕ рдЖрд╡рд╢реНрдпрдХ рд╕рдЯреАрдХрддрд╛ рдХреЗ рд╕рд╛рде рдЪрдХреНрдХрд░ рд▓рдЧрд╛ рд░рд╣реЗ рд╣реИрдВ, рд╕рдВрдЦреНрдпрд╛ рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЪреАрдиреА рдореЗрдВ рд╡реЗ рд╡рд┐рдзрд┐рдпрд╛рдВ рднреА рд╣реИрдВ рдЬреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдмрд╛рдВрдзрддреА рд╣реИрдВред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
(125.425).round(2); > 125.43
(125.425).round(-2); > 100
(4235000).format(); > "4,235,000"
(50).pad(5); > "00050"
(23).ordinalize(); > "23rd"
(5).upto(10); > [5,6,7,8,9,10]
(5).daysAfter( 'Wednesday' ); > "Monday, August 8, 2011 00:00"
(5).yearsBefore( '2001' ); > "Monday, January 1, 1996 00:00"
(5).times( function () {
/* Run 5 times */
})



рджрд┐рдирд╛рдВрдХ


рдЪреАрдиреА Date.create рд▓рд┐рдП Date.create рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╛рд░реВрдкреЛрдВ рдореЗрдВ рддрд╛рд░реАрдЦреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИ (рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ dd.mm.yyyy рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ) - рдкрд╛рда, рд╕рд╛рдкреЗрдХреНрд╖, рдкреВрд░реНрдг, рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдкред рддрд┐рдерд┐рдпреЛрдВ рдХреЛ рд╕рд░рд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдЬреЛ рд╕рднреА рджрд┐рдирд╛рдВрдХ рдЗрдирдкреБрдЯ рд╕реНрд╡рд░реВрдкреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИ, рдЖрдк рдЬрдЯрд┐рд▓ рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
Date.create( 'June 15, 2002' ); > "Saturday, June 15, 2002 00:00"
Date.create( '2002-06-15' ); > "Saturday, June 15, 2002 00:00"
Date.create( '2002/06/15' ); > "Saturday, June 15, 2002 00:00"
Date.create( '15 June, 2002' ); > "Saturday, June 15, 2002 00:00"
Date.create( 'today' ); > "Monday, August 1, 2011 00:00"
Date.create( '2 days ago' ); > "Saturday, July 30, 2011 20:26"
Date.create(888888888899); > "Tuesday, March 3, 1998 04:34"
Date.create( 'the 15th of last month' ); > "Friday, July 15, 2011 00:00"
Date.create( 'the first day of 1998' ); > "Thursday, January 1, 1998 00:00"
Date.create().format( '{12hr}:{mm} {tt} on {Weekday}' ); > "8:26 pm on Monday"
Date.create( '3200 seconds ago' ).relative(); > "53 minutes ago"
Date.create().iso(); > "2011-08-01T16:26:20.122Z"
Date.create().isAfter( 'May 25' );> true
Date.create(). is ( 'tuesday' ); > false
Date.create(). is ( 'July' ); > false
Date.create(). is ( 'the 7th of June' ); > false
Date.create().addDays(2); > "Wednesday, August 3, 2011 20:26"
Date.create().addMonths(2); > "Saturday, October 1, 2011 20:26"
Date.create().addYears(2); > "Thursday, August 1, 2013 20:26"



рд╡рд╕реНрддреБрдПрдВ


рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реБрдЧрд░ Object.prototype рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рдмрд╛рддрдЪреАрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓рд╛рдЗрдмреНрд░реЗрд░реА Object рдХреНрд▓рд╛рд╕ рдХреА рд╡рд┐рдзрд┐ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╢реЙрд░реНрдЯрдХрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ Object.extended , рдЬреЛ рдПрдХ рд╣реИрд╢ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рддрд░реАрдХреЛрдВ рдХреЗ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╣реИрдВред рдЯрд╛рдЗрдк рдЪреЗрдХрд┐рдВрдЧ рдореЗрдердбреНрд╕ рдЬреИрд╕реЗ рдХрд┐ isString , isFunction рдЖрджрд┐ рдХреЛ рднреА рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
Object.extended({ broken: 'wear' }).keys(); > [ "broken" ]
Object.extended({ broken: 'wear' }).values(); > [ "wear" ]
Object.keys({ broken: 'wear' }); > [ "broken" ]
Object.clone({ broken: 'wear' }); > { "broken" : "wear" }
Object.isString( 'yes, it is' ); > true
Object.isFunction( function () {}); > true



рдХрд╛рд░реНрдпреЛрдВ


рдЪреАрдиреА рдореЗрдВ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ bind , рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рджрд╛рдпрд░реЗ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╡рд╣рд╛рдБ рднреА delay , defer рдФрд░ Function.lazy рддрд░реАрдХреЗ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рд╕реАрдкреАрдпреВ рдкрд░ рдПрдХ рдмрдбрд╝рд╛ рднрд╛рд░ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдХреНрд▓реЛрдЬрд░ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рддрд░реАрдХреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА ред
( function (a) {
/* this = 'wasabi', a = 'bobby' */
}).bind( 'wasabi' , 'bobby' )();
( function () {
/* delayed 500ms */
}).delay(500);
[1,2,3].each(Function.lazy( function () {
/* Each iteration will occur 5ms after the previous one */
}, 5));


* This source code was highlighted with Source Code Highlighter .

рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ:

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


All Articles