下記のコードを実行すると、10月、11月、12月のセレクトボックスの表示が010月、011月、012月になってしまうのですが、0を無くす書き方を教えて頂きたいです。


HTML

<input name="textYear"> 年
  <select name="selectMonth"></select> 月

Javascript

$(function(){
    $('input[name="textYear"]').on('change keyup',function(){
        $('select[name="selectMonth"] option').remove();
        $('select[name="selectMonth"]').append($("<option></option>"));

        if($(this).val() != ""){
            for(i=4;i<=15;i++){
                let m = (i<13)?i:(i-12);
                m =('0' + m).slice(-length);
                let y = (i<13)?$(this).val():parseInt($(this).val())+1;

                let op =$("<option></option>",{
                    value:y+m,
                    html:y+"年"+m+"月"

                });
                $('select[name="selectMonth"]').append(op);
            }
        }
    });
});

最後にこのコードですが、4は4月から始まるから4で15はなぜ15という数字が出てきたのか教えて頂きたいです。あと、13とー12の意味も教えて頂きたいです。
for(i=4;i<=15;i++){
let m = (i<13)?i:(i-12);