Backbone: рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯреНрдЯрд░/рд╕реЗрдЯрд░ рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 9 рдлрд╝рд░ре░ 2015  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: jashkenas/backbone

рдЪреВрдВрдХрд┐ рдЧреЗрдЯрд░реНрд╕/рд╕реЗрдЯрд░реНрд╕ рдЖрдИрдИ 9 + рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ рдФрд░ рдИрдПрд╕ 6 рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рдкреНрд░рдЪрд▓рд┐рдд рд╣реЛрдВрдЧреЗ, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдмреИрдХрдмреЛрди рдХреА рд╡рд┐рд╕реНрддрд╛рд░ рд╡рд┐рдзрд┐ рдиреЗ рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ред

var Person = Backbone.Model.extend({
  get fullName() {
    return this.get('firstName') + ' ' + this.get('lastName');
  }
});

var elonMusk = new Person({
  firstName: 'Elon', 
  lastName: 'Musk'
});

console.log(person.fullName); // >> Elon Musk

рдЕрднреА рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо undefined is not a function рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ _.extend рдХрд╛ рдЙрдкрдпреЛрдЧ рдЧреЗрдЯрдЯрд░ рдХреЛ рдХреЙрд▓ рдХрд░ рд░рд╣рд╛ рд╣реИред

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

рдЬрд╝рд░реВрд░, рдореИрдВ рдпрд╣ рдХрд░реВрдБрдЧрд╛

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

рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдЬрд┐рд╕реЗ person.fullName() рдХреЗ рд░реВрдк рдореЗрдВ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЬрд╛рди рд╕рдХреЗрдВ рдХрд┐ рдпрд╣ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рд╣реИ?

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

рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рд╕реЗ рдЕрдзрд┐рдХ рдпрд╣ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдирдП рд╡рд░реНрдЧ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде рдЧрдардмрдВрдзрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХреНрд▓рд╛рд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рдХреЛрдИ рдкреНрд░реЙрдкрд░реНрдЯреА рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝рд░ рдирд╣реАрдВ рд╣реИ рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЙрдирдХреЗ рд▓рд┐рдП рдЕрднреА рддрдХ рдХреЛрдИ рд╕реНрдкреЗрдХ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрдВрдЯрд░рдСрдк рдПрдХ рдореБрджреНрджрд╛ рд╣реЛрдЧрд╛ред

рд╡реЗ рдмреИрдХрдмреЛрди рдореЙрдбрд▓ рдХреЗ рдореВрд▓ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЬрд╛рддреЗ рд╣реИрдВред

рд╡рд╣ рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдХреНрдпрд╛ рд╣реИ?

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЧреЗрдЯрд░реНрд╕ рдмреИрдХрдмреЛрди рдореЗрдВ рдореМрдЬреВрджрд╛ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЖрдВрд╢рд┐рдХ рд╕рдорд╛рдзрд╛рди рд╣реИрдВред model.idAttribute рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ред

рд╡рд┐рднрд┐рдиреНрди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде jsperf рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдХреБрдЫ рдорд┐рдирдЯ рдмрд┐рддрд╛рдП:
http://jsperf.com/backbone-extend-with-define-property

рд╡рд╣ рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдХреНрдпрд╛ рд╣реИ?

рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдХрд┐ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдкрд░ рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдФрд░ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд╛рд░рджрд░реНрд╢реА рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ obj.prop = val рдЙрд╕ рд╕рдВрдкрддреНрддрд┐ рдореВрд▓реНрдп (рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдХреЗ рд▓рд┐рдП рдбрд┐рдЯреНрдЯреЛ) рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рд╣рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдФрд░ рдШрдЯрдирд╛рдУрдВ рдХреЛ рдмрджрд▓рдиреЗ рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред get рдФрд░ set рд░реИрдкрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ attributes ред

рдмреИрдХрдмреЛрди рдореЗрдВ рдореМрдЬреВрджрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯрд░реНрд╕ рднреА рдЖрдВрд╢рд┐рдХ рд╕рдорд╛рдзрд╛рди рд╣реИрдВред model.idAttribute рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ред

рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рдореМрдЬреВрджрд╛ _.result рд░реИрдкрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ? idAttribute рдпрд╛ рддреЛ рдПрдХ рдЖрджрд┐рдо рдпрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ modelId рдХреЗ рд╕рд╛рде рднреА рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдЙрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛: https://github.com/jashkenas/backbone/issues/3408

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

рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЙрдиреНрд╣реАрдВ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╕реЗрдЯрд░реНрд╕ рдФрд░ рдЧреЗрдЯрд░реНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдХреБрдЫ рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд▓рд┐рдП рд╡рд╣рд╛рдВ рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ, https://github.com/jashkenas/coffeescript/pull/2902) рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВред рдЙрдиреНрд╣реЗрдВ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдмреИрдХрдмреЛрди рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдореЗрдВ рдмрд╛рдзрд╛ рдирд╣реАрдВ рдмрдирдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдореБрдЭреЗ рдЙрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЬреБрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛: #3408

рдореБрдЭреЗ рдпрд╛рдж рджрд┐рд▓рд╛рдирд╛? рдореИрдВ рдмрд▓реНрд▓реЗ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рджрдмрд╛рд╡ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, extend _.extend рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╣рд╛рдВ рдирд╣реАрдВред рдПрдХ рдЕрднреНрдпрд╕реНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдирд╛ред

рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЙрдиреНрд╣реАрдВ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╕реЗрдЯрд░реНрд╕ рдФрд░ рдЧреЗрдЯрд░реНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдореИрдВ рдЧреЗрдЯрд░реНрд╕/рд╕реЗрдЯрд░реНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдмреЛрд▓ рд░рд╣рд╛ рдерд╛, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХреИрд╕реЗ рдмреИрдХрдмреЛрди рдиреЗ рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдСрдк рдХреЗ рд▓рд┐рдП __super__ рдЬреЛрдбрд╝рд╛, рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдЙрд╕реА рддрд░рд╣ ES6 рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдореБрдЭреЗ рдпрд╛рдж рджрд┐рд▓рд╛рдирд╛? рдореИрдВ рдмрд▓реНрд▓реЗ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рджрдмрд╛рд╡ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВред

Collection.extend({
  model: function() { return Model }
});
//
collection.modelId(model); // 'id' regardless if that's correct or not.
Collection.extend({
  get model() { return Model }
});
//
collection.modelId(model); // correct for *some* of the common cases.

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди _.extend рдореЗрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╣рд╛рдВ рдирд╣реАрдВред рдПрдХ рдЕрднреНрдпрд╕реНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдирд╛ред

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЬрдЧрд╣ рдирд╣реАрдВ рд╣реИ, рдЕрдЧрд░ рдХреБрдЫ рднреА рд╣реЛ рддреЛ рдпрд╣ рдирдИ _.assign рдкрджреНрдзрддрд┐ рдореЗрдВ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЖрдИрдПрдордУ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рдП рдФрд░ рднреВрд▓ рдЬрд╛рдП рдХрд┐ рдореИрдВ рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдмреИрдХрдмреЛрди рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд▓рд┐рдП рдИрдПрд╕ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдСрдк рдореБрджреНрджреЛрдВ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХреНрдпреЛрдВ рд╣реИ рд▓реЗрдХрд┐рди рдХреЙрдлреАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдирд╣реАрдВред

рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рджреЗрдЦрддреЗ рд╣реБрдП рдЖрдИрдИ рдЯреЗрдХ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдПрдХрдорд╛рддреНрд░ рдРрд╕рд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ class (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЯреНрд░реИрд╕реБрд░ рдФрд░ 6to5 рдЕрднреА рддрдХ extends рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ) рдХреЗ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рд╕рднреНрдп рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде, рд╣рдо рдЗрд╕рд╕реЗ рдПрдХ рддрд░рд╣ рд╕реЗ рджреВрд░ рд╣реИрдВ рдЬрд╝рд░реВрд░реАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмреИрдХрдмреЛрди рдХреЗрд╡рд▓ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЫреЗ рдХреА рд╕рдВрдЧрддрддрд╛ рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд░рд╛рд╕реНрддреЗ рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИред

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЯреНрд░реЗрд╕рд░ рдФрд░ 6to5 рдЕрднреА рддрдХ extends . рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ

рд╡реЗ рджреЛрдиреЛрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рд╕реНрдерд┐рд░ рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП __proto__ рдХреЗ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рдмреИрдХрд╡рд░реНрдб-рд╕рдВрдЧрддрддрд╛ рдХреЛ рддреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕реЗ рдФрд░ рднреА рддреЗрдЬрд╝ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдпрд╣ рдЪреБрдирд┐рдВрджрд╛ рд░реВрдк рд╕реЗ Object.setPrototypeOf рдЬрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реЛ, рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

@thejameskyle рдЗрд╕реЗ рдХрд┐рд╕реА рдореБрджреНрджреЗ рдХреЗ рдмрдЬрд╛рдп рдкреАрдЖрд░ рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдпрд╣ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реИред

рдЬрд╝рд░реВрд░, рдореИрдВ рдпрд╣ рдХрд░реВрдБрдЧрд╛

рдХреНрдпрд╛ рдпрд╣ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рд╣реИ? рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рд░ рдпрд╛ рдХреБрдЫ рд╣реИ? рдореИрдВ рдПрдХ рд╢реЙрдЯ рд▓реЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

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

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

rubiii picture rubiii  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tribalvibes picture tribalvibes  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

inf3rno picture inf3rno  ┬╖  17рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

g00fy- picture g00fy-  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

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