Underscore: рд╕рд░рдгреА рдлрд╝рдВрдХреНрд╢рди: рд╡реИрд▓ x рдмрд╛рд░ рджреЛрд╣рд░рд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рдирд╡ре░ 2012  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: jashkenas/underscore

рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

_.repeat("0",10)
// => ["0","0",... 10 times]

рдпрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, _.range рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рддрд╛рдХрд┐:

_.range(0,0,10), instead of outputting [] outputs the above.

рдпрд╣рд╛рдБ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ:

var values = ["A","B","C"];
_.object(values)
// => {"A":undefined,"B":undefined,"C":undefined} // wonderful, as expected

рд▓реЗрдХрд┐рди, рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореИрдВ рдХреБрдВрдЬреА/рдореВрд▓реНрдп рдЬреЛрдбрд╝реЗ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рди рдХреЛ рд╕рдорд╛рди рдорд╛рди рдкрд░ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ?
рдпрд╣ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:

_.object(values,"0") // provide scalar instead of array
// => {"A":undefined,"B":undefined,"C":undefined} // same as before

рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЕрдЧрд░ _repeat рдореМрдЬреВрдж рд╣реИ:

_.object(values,_.repeat("0",values.length))
// => {"A":"0","B":"0","C":"0"} 

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рдзрд┐ рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдкреНрд░рддреНрдпреЗрдХ callback рдХреЙрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ _.times рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рд▓реЛ-рдбреИрд╢ рдХрд░рддрд╛ рд╣реИ :

var zeros = _.times(10, function() { return 0; });
// => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

рд╕рднреА 4 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдПрдХ рд╕рд░рдгреА рджреЛрд╣рд░рд╛рдиреЗ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рд▓рд┐рдП +1ред рдореИрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП _.range рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрдЦреНрдпрд╛ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИред

рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рдзрд┐ рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдкреНрд░рддреНрдпреЗрдХ callback рдХреЙрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ _.times рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рд▓реЛ-рдбреИрд╢ рдХрд░рддрд╛ рд╣реИ :

var zeros = _.times(10, function() { return 0; });
// => [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

+1 @jdaltonред

рдореЗрд░реЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд╛рдУред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

umarfarooq125 picture umarfarooq125  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

afranioce picture afranioce  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Francefire picture Francefire  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

clouddueling picture clouddueling  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jezen picture jezen  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ