Backbone: рд╕рдлрд╛рд░реА 9.1 рдореЗрдВ рдиреЗрд╡рд┐рдЧреЗрдЯ () рдкрд░ рдбреЛрдо рдЕрдкрд╡рд╛рдж 18

рдХреЛ рдирд┐рд░реНрдорд┐рдд 13 рдордИ 2016  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: jashkenas/backbone

рд╕реБрд░рдХреНрд╖рд╛ рддреНрд░реБрдЯрд┐: рдбреЛрдо рдЕрдкрд╡рд╛рдж 18 рдХреЛ рд╕рдлрд╛рд░реА (рдЖрдИрдУрдПрд╕ рдФрд░ рдУрдПрд╕рдПрдХреНрд╕) рджреНрд╡рд╛рд░рд╛ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕ рдХреНрд╖рдг рд╕реЗ pushState() рдХреЛ 100 рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

https://forums.developer.apple.com/thread/36650
рдмреЗрд▓рд╛: https://jsfiddle.net/n3uxkyhr/5/

var TestRouter = Backbone.Router.extend( {
    initialize: function() {
        this.route("/test/:id", function( id ) { console.log("test" + id) });
    }
} );
var router = new TestRouter();
Backbone.history.start({pushState: true});

try {
  for(var i = 0; i < 200; i++ ) {
      router.navigate("/test/"+i);
    }
    alert("passed, i = " + i);
} catch( e ) {
    var msg = "failed on i " + i + " with error: " + e + "\nStack: " + e.stack;
  console.error( e, msg );
  alert(msg);
}

рдЗрд╕рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓:

failed on i 100 with error: Error: SecurityError: DOM Exception 18
Stack: pushState@[native code]
navigate<strong i="14">@https</strong>://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone.js:1823:69
navigate<strong i="15">@https</strong>://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone.js:1522:32
global code<strong i="16">@https</strong>://fiddle.jshell.net/n3uxkyhr/6/show/:63:22"
global code тАФ show:68

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

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдРрдкреНрдкрд▓ рдбреЗрд╡рд▓рдкрд░ рдлрд╝реЛрд░рдо рд▓рд┐рдВрдХ рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╕рдлрд╛рд░реА рдХреЗ рд╕рд╛рде рд╣реИред рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд░реАрдврд╝ рдХреА рд╣рдбреНрдбреА рд╕реЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рдмреИрдХрдмреЛрди рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдмрдЧ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдк @zowers рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ? рдХреНрдпрд╛ рдпрд╣ рдмрдЧ рдХреЗрд╡рд▓ рддрднреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдиреЗрд╡рд┐рдЧреЗрдЯ рдХреЛ 100 рдмрд╛рд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдРрд╕рд╛ рддрдм рд╣реЛрдЧрд╛ рдЬрдм рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ 100 рдмрд╛рд░ рдХрд╣рд╛ рдЬрд╛рдП?

рдХрд╛рдордХрд╛рдЬ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХреЛ try/catch рдореЗрдВ рд▓рдкреЗрдЯрдирд╛ рдкрдбрд╝рд╛
рд╕рдлрд╛рд░реА рдореЗрдВ 9.1 (рдЖрдЬ рддрдХ рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░) - рдпрд╣ рдХреБрд▓ 100 рдЧреБрдирд╛ рд╣реИ
рд╕рдлрд╛рд░реА рдореЗрдВ 9.1.1 рдбреЗрд╡рд▓рдкрд░ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди - рдпрд╣ 30 рд╕реЗрдХрдВрдб рдореЗрдВ 100 рдмрд╛рд░ рд╣реИ

рдпрд╣ рдареАрдХ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛрдЧрд╛?
рдХреНрдпрд╛ рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЧреИрд░-рдХрд╛рд░реНрдпрд╢реАрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реЛрдирд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ?

рдореИрдВрдиреЗ рдЗрд╕реЗ рд╡рд╣рд╛рдВ рд░рдЦрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕рдлрд╛рд░реА рдмрдЧ рдкрдврд╝рдиреЗ рд╕реЗ рдореБрдЭреЗ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рдерд╛ред рдХреЛрд╢рд┐рд╢/рдкрдХрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ 100рд╡реЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж рдорд╛рд░реНрдЧ рдирд╣реАрдВ рдмрджрд▓рдирд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИ IMO

рдХреЛрд╢рд┐рд╢/рдкрдХрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ 100рд╡реЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж рдорд╛рд░реНрдЧ рдирд╣реАрдВ рдмрджрд▓рдирд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИ IMO

рдорд╛рдирд╛ред рдпрд╣ рдПрдХ рдореВрдХ рд╡рд┐рдлрд▓рддрд╛ рд╣реИ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рднреА рдмрджрддрд░ рд╣реИред

рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╢рд╛рдпрдж рдиреЗрд╡рд┐рдЧреЗрдЯ рдХреЛ рд╣реИрд╢ рдореЗрдВ рд╡рд╛рдкрд╕ рдЖрдирд╛ рдЪрд╛рд╣рд┐рдП

рдЖрдЬ рд╕рдлрд╛рд░реА 9.1.1 рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛
рд╕рдлрд╛рд░реА рд╕рдлрд╛рд░реА рдореЗрдВ 9.1.1 history.pushState() рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ рдЕрдЧрд░ 30 рд╕реЗрдХрдВрдб рдореЗрдВ 100 рдмрд╛рд░ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдмрдВрдж рдХрд┐рдпрд╛ рд╣реБрдЖ? рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЬрд▓реНрдж рд╣реА рдЕрдкрдбреЗрдЯ рдорд┐рд▓реЗрдЧрд╛?

рдпрд╣ рд╕рдлрд╛рд░реА рдореЗрдВ рдПрдХ рдмрдЧ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд┐рдирд╛ рд╣рдо рдмрд╣реБрдд рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ 9.1 рдХреЛ рдХреЗрд╡рд▓ 2 рдорд╣реАрдиреЗ рд╣реБрдП рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВ рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рджреЗ рд░рд╣реЗ рд╣реИрдВред

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

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

etler picture etler  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gfranko picture gfranko  ┬╖  18рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

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

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

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